интерпретация первой строки .bashrc
Установил новый Линукс себе и при запуске консоли появилась вот такая странность:
‘# : команда не найдена’
Первая строка в файле .bashrc: ‘# ~/.bashrc’
Давно линуксом не пользовался – может что-то забыл?
Установил новый Линукс себе и при запуске консоли появилась вот такая странность:
‘# : команда не найдена’
Первая строка в файле .bashrc: ‘# ~/.bashrc’
Давно линуксом не пользовался – может что-то забыл?
Ввожу в консоли команду и получаю ответ:
tvr > google-drive-ocamlfuse
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
[5407:5407:1125/215740.979481:ERROR:broker_posix.cc(43)] Invalid node channel message
[5403:5403:0100/000000.989120:ERROR:sandbox_linux.cc(374)] InitializeSandbox() called with multiple threads in process gpu-process.
[5403:5403:0100/000000.008635:ERROR:broker_posix.cc(43)] Invalid node channel message
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
Access token retrieved correctly.
При этом браузер у меня открылся, как и должно быть. Я подтвердил в Google (на автоматически открывшейся странице) свой аккаунт, и в конце оказался на странице со следующим содержанием: The application was successfully granted access. Please wait for the client to retrieve the authorization tokens.
Но команда выдает ошибку:
tvr > google-drive-ocamlfuse ~/g_disk
fuse: failed to open /dev/fuse: Permission denied
Проблема с обработкой строк.
У меня есть строка: ${line:0:$i}, – в которой я ищу пробел, для того, чтобы поместить его в переменную $space.
Как определить, что в переменную помещен пробел?
Проверка:
[ -z "$space" ] && echo Yes
не работает. Использование [ «$space» = " " ] тоже безрезультатно.
Как правильно работать с пробелами?
Есть ли в bash возможность узнать значение аргумента команды?
Пример:
Я хочу узнать значение следующего аргумента: xrandr –gamma
Это в принципе возможно?
Почему появляется бесконечный ввод строки?
stop=1
file staf:
#!/bin/bash
function staf
{
while [ $stop -eq 1 ]
do
echo "$stop" > /home/timey/smt/tmpfile
done
}
Итог:
tvr > . ~/smt/staf
tvr > staf
работает ввод строки...
продолжает работать ввод строки...
и так далее...
далее...
далее...
На CodeRoad есть статья, где рассказывается о том, как передавать параметры от запущенного субсценария основному сценарию:
https://coderoad.ru/35953072/Передача-параметров-из-одного-сценария-в-другой-Shell-сценариев
Как получить доступ к параметрам запущенного сценария через stdout? Кто-то может объяснить это простым языком?
– Создаю файл скрипта и записываю в него код. Файл не исполняется:
tvr > cat > hello.sh
#!/bin/bash
echo "Hello programmers!"
^Z
[1]+ Остановлен cat > hello.sh
tvr > chmod +x hello.sh
tvr > /home/timey/smt/hello.sh
bash: /home/timey/smt/hello.sh: /bin/bash: неверный интерпретатор: Текстовый файл занят
– Открываю файл в medit и просто сохраняю, нажатием Ctrl+S, после чего снова запускаю скрипт:
tvr > medit hello.sh &
tvr > /home/timey/smt/hello.sh
Hello programmers!
Все работает.
В чем причина? Почему скрипт, созданный в командной строке при помощи cat не запускается, а после его пересохранения в текстовом редакторе, все начинает работать?
Подозреваю, что проблема как-то связана с кодировками. В shell`е я смог разобраться с кодировками, а в bash пока нет. Или с прерыванием процесса по ^Z.
В чем проблема?
← предыдущие |