Чтобы скопировать все строки после xyz
, попробуйте:
sed '0,/xyz/d' file1.txt >file2.txt
1,/xyz/
задает диапазон строк, начиная с первой и заканчивая первым вхождением строки, соответствующей xyz
. d
указывает sed удалить эти строки.
Примечание.:Для BSD/MacOS sed можно использовать sed '1,/xyz/d' file1.txt >file2.txt
, но это работает, только если первое появление xyz
находится во второй строке или позже. (Шляпный наконечник:кусалананда .)
Другой подход,как предложил дон _кристи , должен работать для всех sed:
{ printf %s\\n; cat file1.txt; } | sed '1,/xyz/d' >file2.txt
Рассмотрим этот тестовый файл:
$ cat file1.txt
a
b
xyz
c
d
Запускаем нашу команду:
$ sed '1,/xyz/d' file1.txt >file2.txt
$ cat file2.txt
c
d
Та же логика может использоваться с awk:
awk 'NR==1,/xyz/{next} 1' file1.txt >file2.txt
NR==1,/xyz/{next}
указывает awk пропустить все строки с первой(NR==1
)до первой строки, соответствующей регулярному выражению xyz
. 1
указывает awk напечатать все оставшиеся строки.
Хорошо, проблема оказалась не такой, как я ожидал. У меня были файлы узлов на жестком диске btrfs. Кажется, именно поэтому это не сработало.
Я переместил их туда, но я думал, что они все еще работают, либо это была ошибка, либо они начали не работать.
Во всяком случае, перемещение файлов на мой основной жесткий диск (ext4 )решило проблему.
Как вы уже догадались, я думаю, что это проблема с разрешением. Попробуйте проверить, может ли пользователь, под которым вы находитесь, выполнить файл /home/un//test/node_modules/.bin/nuxt
и проверить, не установлены ли в папке /home/un//test/node_modules/.bin/
биты SUID и/или SGID. Я думаю, что нет, потому что папки модулей node _генерируются автоматически npm, но я думаю, что вы должны просто рекурсивно дать разрешения для всего каталога в соответствии с вашей учетной записью пользователя, которая будет запускать эту службу.