$ замены с £ с помощью Команды кошки

Вы правы в том, что он ссылается на синхронизацию дисков. Если ядра паникует, может быть множество причин - включая ошибку программного обеспечения в файловом системном коде.

Синхронизация дисков может писать поврежденные данные дискам, например, если паника была связана с ошибкой в ​​Ext4, например - поэтому ядро ​​воспроизводит его безопасным и не промотала на диск, потому что он больше не доверяет Данные действительны больше.

Кроме того, если паника произошла из-за аппаратного выпуска (например, плохой оперативной памяти), синхронизация дисков может также писать поврежденные данные из памяти на диск. Если файловая система тогда стала повреждена в результате, система может отказаться от загрузки после перезагрузки или может потребоваться быть FSCK'Ed.

Общая идея заключается в том, что если сам ядро ​​только что разбился, больше ничего не доверяю и просто остановите систему.

-2
01.10.2014, 09:54
3 ответа

В регулярных выражениях $ имеет особое значение, оно означает "конец записи" (в большинстве случаев запись==строчная). Таким образом, вам нужно избежать этого. Попробуйте:

sed 's/\$/£/g' file > outfile
4
28.01.2020, 05:15

Вы можете использовать sed для замены каждого вхождения строки, как описано здесь:

sed -i 's/\£/\$/g' FILENAME

Опция -i сообщает sed для работы с файлом, s является оператором для замены строк, - это строка, которую нужно заменить, \$ - это строка, заменяющая каждый символ $ (\ экранирует знаки, так как они являются специальными символами), а g означает замену каждого экземпляра.

EDIT: опция -i не работает на Solaris, вы должны использовать этот обходной путь.

.
0
28.01.2020, 05:15

Вы можете избежать спецсимвола ($) в команде sed.

$ cat test.txt
£ pound £
$ dollar $
£ pound £
$ dollar $

$ sed 's/\$/£/g' test.txt
£ pound £
£ dollar £
£ pound £
£ dollar £

Or alternatively

$ sed 's/[$]/£/g' test.txt
£ pound £
£ dollar £
£ pound £
£ dollar £
0
28.01.2020, 05:15

Теги

Похожие вопросы