Я понимаю, что sed
это команда для работы с текстовым файлом.
Из моего Google, кажется, -i
означает выполнить операцию над самим файлом, это правильно?
Как насчет '1d'
?
В sed
:
-i
опция будет редактировать входной файл на месте
'1d'
удалит первую строку входного файла
Пример:
% cat file.txt
foo
bar
% sed -i '1d' file.txt
% cat file.txt
bar
Обратите внимание, что в большинстве случаев рекомендуется использовать резервную копию при использовании этой -i
опции, чтобы у вас была резервная копия исходного файла на случай непредвиденных изменений.
Например, если вы делаете:
sed -i.orig '1d' file.txt
исходный файл будет сохранен как file.txt.orig
и измененный файл будет file.txt
.
-i
чтобы сначала увидеть, что происходит, а затем использовать-i
для фактического изменения файла.1. а)
Печатает содержимое
file.txt
; исключая первую строку; на стандартный вывод.2. а)
Печатает содержимое
file.txt
; исключая первую строку; обратно вfile.txt
; переписываю оригинал.2. б)
Создает резервную копию оригинала (как
file.txt.back
) перед внесением изменений. За исключением FreeBSDsed
, суффикс (здесь.back
) должен быть присоединен к-i
опции (в том же аргументе, без пробела между-i
и.back
).3. а)
Печатает содержимое
file.txt
; исключая вторую строку; на стандартный вывод.(Указание любого числа приведет к удалению соответствующей строки).
Также совместим с
-i
флагом.3. б)
Печатает содержимое
file.txt
; исключая все кроме первой строки; на стандартный вывод.(Другими словами, печатается только первая строка).
Также совместим с
-i
флагом.3. в)
Печатает содержимое
file.txt
; исключая последнюю строку; на стандартный вывод.Также совместим с
-i
флагом.источник
В
sed -h
иметь:и «выполнить операцию над самим файлом». Абсолют это
И
man
сказал: «Сед - потоковый редактор. Редактор потока используется для выполнения базовых преобразований текста в потоке ввода (файл или ввод из конвейера). 'как твой вопрос,
означает: удалить первую строку в файле
"file_name"
на месте и резервное копирование в файл. (так же, как редактировать файл и удалять первую строку напрямую.)источник