Вы используете легкий менеджер окон. У меня была эта проблема прежде в другом таком менеджере окон. Таким образом, это походит на проблему с polkit мне. Делает Вашу систему, назвали каталог /etc/polkit-1/localauthority/
? Если так, создайте файл (как корень)... Я использую нано текстовый редактор здесь. Вставка в терминал с CTRL + SHIFT + V.
su root
nano /etc/polkit-1/localauthority/50-local.d/55-storage.pkla
добавьте следующие строки:
[Storage Permissions]
Identity=unix-group:plugdev
Action=org.freedesktop.udisks.filesystem-mount;org.freedesktop.udisks.drive-eject;org.freedesktop.udisks.drive-detach;org.freedesktop.udisks.luks-unlock;org.freedesktop.udisks.inhibit-polling;org.freedesktop.udisks.drive-set-spindown
ResultAny=yes
ResultActive=yes
ResultInactive=no
теперь добавьте себя к plugdev группе:
usermod -a -G plugdev <your username>
выйдите из системы и войдите в. Если это - polkit, необходимо смочь смонтировать медиа теперь.
Если в вашей системе используется версия GNU sed
, вы можете воспользоваться расширением GNU r
команды:
r filename
As a GNU extension, this command accepts two addresses.
Queue the contents of filename to be read and inserted into the
output stream at the end of the current cycle, or when the next input
line is read. Note that if filename cannot be read, it is treated as
if it were an empty file, without any error indication.
As a GNU sed extension, the special value /dev/stdin is supported for
the file name, which reads the contents of the standard input.
Например,
$ sed '3r /dev/stdin' 123.txt < <(sed -n '2,4p' abc.txt)
1
2
3
b
c
d
4
5
внутреннее редактирование с помощью ed
и sed
(на басовоминге):
ed -s 123.txt<<<$'3r !sed -n "2,4p" abc.txt\nw'
с помощью awk
и sed
:
$ awk 'FNR==3{print;system("sed -n '2,4p' abc.txt");next};1' 123.txt
1
2
3
b
c
d
4
5
С помощью sed
можно использовать команду r
для вставки целого файла. Чтобы вставить часть файла, извлеките эту часть и подсоедините ее как ввод к sed
. Для извлечения также можно использовать sed
. С помощью
sed -n '2,4p' abc.txt | sed -i '3r /dev/stdin' 123.txt
с помощью awk
можно прочитать один файл и перейти к другому файлу, находящемуся посередине.
awk <123.txt >123.txt.new '
1 # print the input line
NR==3 { # after line 3 of 123.txt, …
while (getline < "abc.txt") {
++inner_NR;
if (inner_NR >= 2) print; # start printing at line 2 from abc.txt
if (inner_NR == 4) break; # stop after line 4
}
}
' &&
mv 123.txt.new 123.txt
Вы также можете использовать голову
и хвост
для извлечения частей файлов, которые вы хотите объединить.
head -n 3 <123.txt >123.txt.new &&
<abc.txt tail -n +2 | head -n 3 >>123.txt.new &&
tail -n +4 123.txt >>123.txt.new &&
mv 123.txt.new 123.txt
Вы можете использовать голову
+ хвост
с sed
. Для огромных файлов это, скорее всего, будет самым быстрым.
<abc.txt tail -n +2 | head -n 3 | sed -i '3r /dev/stdin' 123.txt
Обратите внимание, что все эти подходы записывают во временный файл, который перемещается в 123.txt
(даже подходы, использующие sed -i
, потому что это то, что sed -i
делает под капотом).