Переменная, установленная в одной среде, не может быть доступна в родительской или другой (не -дочерней )оболочках. Следующее будет работать:
export my_variable="testing..."
bash
echo $my_variable
Но $my_variable
не будет доступен в другом терминале, если вы не поместите эти строки в какой-нибудь файл (, например. .bashrc
или исполняемый файл.bashrc
)
Другой вариант — использовать fish
оболочку...
fish -c "set -u my_variable 'testing...'"
Подробнее можно прочитать здесь
-U or --universal causes the specified shell variable to be given a universal scope. If this option is supplied, the variable will be shared between all the current user's fish instances on the current computer, and will be preserved across restarts of the shell.
Не уверен, в чем именно заключается ваше требование, но просто из любопытства :если вы беспокоитесь о том, чтобы содержимое переменной было доступным/читабельным, вы можете записать данные в файл и установить разрешения --x------
и поместите файл в .bashrc
.
Вы можете установить разделитель полей вывода на символ табуляции :
.awk '{print $1,$2,$2,$3}' OFS='\t' genome_cov.bed
или используйте printf
, чтобы указать формат явно
awk '{printf "%s\t%s\t%s\t%s\n",$1,$2,$2,$3}' genome_cov.bed