Во-первых, я очень плохо раковине, как вы увидите :)Shell - сохранение содержимого файла в переменную, то выводя переменную
Итак, я следующая задача: Сценарий получает два arguments (fileName, N). Если количество строк в файле больше, чем N, тогда мне нужно вырезать последние N строк, а затем перезаписать содержимое файла.
Я думал о сохранении содержимого файла в переменной, а затем просто о том, что касается этого файла. Однако по какой-то причине он не работает.
У меня проблемы с сохранением последних N строк переменной.
Это, как я пытался сделать это:
lastNLines=`tail -$2 $1`
cat $lastNLines > $1
Возможно, я неправильно понял, но не 'tail -n N inFile> outFile' будет достаточно хорош? – pfnuesel
@pfnuesel проблема заключается в том, что OP хочет перезаписать тот же файл, который он читает. – shx2
'tail -n N inFile> outFile && mv outFile inFile' – pfnuesel