Если использование n не работает, вы можете установить последнюю версию nodejs (т.е. версия 8), выполнив следующие команды:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Дальнейшие инструкции здесь. [!d1 ]
Как правило:
- означает чтение аргумента / содержимого из STDIN (дескриптор файла 0) -- означает конец параметров команды, все последует за аргументамиЗачем нужно:
О -:
$ echo foobar | cat -
foobar
Хотя cat может читать содержимое из STDIN, не требуя -, многим командам необходимо это и их man
Теперь о --, я создал файл -spam, давайте cat файл:
$ echo foobar >-spam
$ cat -spam
cat: invalid option -- 'p'
Try 'cat --help' for more information.
$ cat -- -spam
foobar
Без --, [ f13] принимает s, p, a, m все как опции, поскольку они следуют -, -- явно указывает конец опций, после чего -spam принимается как имя файла.
Это действительно зависит от соответствующей программы.
Команда find, например, принимает параметры полного имени с одиночными дефисами:
find . -iname "*.jpg" -delete
Однако, в общем, двойные дефисы означают ключ, который является полным словом, а отдельные дефисы означают swich, который является одной буквой. И однобуквенные переключатели могут быть объединены, а это означает, что все следующие команды эквивалентны:
cp --verbose --recursive /dir/from /dir/to
cp -v -r /dir/from /dir/to
cp -vr /dir/from /dir/to
Двойной дефис, за которым следует пробел, также может использоваться для обозначения «это конец команд все последующее - это имя файла, даже если оно похоже на команду ".
И один дефис без следующих букв может указывать« читать из stdin, а не из файла ».
Однако принудительно . Любая данная программа может нарушить любой из этих стандартов, как это видно, например, с find.
Один дефис - это способ, которым команда традиционно была присвоена командам Unix. У них есть одна минута, за которой следует одна буква (или иногда число) (-a -i -T). За некоторыми параметрами следует аргумент (-ofilename -o filename).
В основном используется два дефиса - и это предпочтительный способ предоставления параметров - для программ / команд в GNU-системах - т.е. в основном на Linux-системах. У них есть два гипса, за которыми следуют одно или несколько слов, разделенных одиночными гипсовыми (--version --ignore-case). Опции с аргументами используют знак равенства для разделения параметра и аргумента (--log-file=filename)
Недостатком старых опций с одним делом является то, что нет стандартной буквы, чтобы делать то же самое по разным командам. Да, -v часто используется для «verbose» - и -V иногда используется для «версии», но между командами нет реального согласия. Например, -i означает «интерактивный» для cp, mv, ln и rm - команда будет запрашивать перед перезаписью или удалением. Но это означает «игнорировать дело» в grep. Чтобы сделать это еще сложнее, команда sort использует -f - для «случая сложения» - таким же образом, чтобы игнорировать верхний и нижний регистр. Чтобы сделать путаницу законченной, многие команды, включая mv и cp, используют -f для «force» ... что команда options что-то делает (например, перезаписывает существующий файл) хотя это обычно не будет.
Кроме того, команды для разных Unix-систем (Solaris, * BSD, SysV, AIX, ...) могут использовать разные буквы, чтобы делать то же самое , Например, команда who перечисляет пользователей в системе. Эта команда может опционально отображать, какие пользователи принимают сообщения от других пользователей к их терминалу - опция для этого - -w под Linux, в то время как Solaris использует -T.
Длинные опции, с другой стороны, позволяют тот же вариант, который будет использоваться для всех команд, и они фактически описывают, что делают параметры. Например, --ignore-case, --interactive, --version, --force. Таким образом, --ignore-case используется как в grep, так и в sort.
Но опять же, они почти используются только в командах / программах, сделанных как часть проекта GNU ...
Наконец, двойной hypen используется, чтобы сообщить команде, что список опций закончен, и что следует за аргументами - независимо от того, насколько они могут выглядеть как параметры. Если имя файла начинается с дефиса (например, -this_is_a_bad_filename), команды могут смутить его с помощью опции и попытаться разобрать его - это означает, что это означает двойное дефис. mv -vi -- -this_is_a_bad_filename this_is_a_better_filename (только команда, которую вы должны использовать, если имя файла начинается с дефиса ...; -)