#shell
Вопрос:
Я хочу напечатать почти все команды и все комментарии. Есть ли способ сделать это? как показано ниже:
$ cat shl
#!/bin/bash
set -x
# this is my bash script.
DIR=/tmp/so
ls $DIR
$ bash shl
#!/bin/bash
# this is my bash script.
DIR=/tmp/so
ls /tmp/so
Ответ №1:
Просто используйте это, и команды, а также комментарии будут напечатаны как выполненные:
#!/bin/bash -xv
# this is my bash script.
DIR=/tmp/so
ls $DIR
Комментарии:
1.
-v
Показывает строку, которая должна быть проанализирована;-x
показывает строку в том виде, в каком она была проанализирована перед выполнением. Я думаю. Вы также можетеset -vx
включать и выключать ихset vx
.
Ответ №2:
Пишите свои комментарии в качестве аргументов для команды no-op. (:)
$ cat shl
#!/bin/bash -x
: this is my bash script.
DIR=/tmp/so
ls $DIR
выход:
$ ./shl
: this is my bash script.
DIR=/tmp/so
ls /tmp/so
Комментарии:
1. Я часто это делаю, но в нем не отображаются реальные комментарии .