Size: a a a

2021 February 10

A

Alex in pro.bash
while [ "$1" != "" ]; do
   case $1 in
       -f | --file )           shift
                               filename=$1
                               ;;
       -i | --interactive )    interactive=1
                               ;;
       -h | --help )           usage
                               exit
                               ;;
       * )                     usage
                               exit 1
   esac
   shift
done

такой вариант тоже норм?
источник

AG

Artemy Gevorkov in pro.bash
Alex
while [ "$1" != "" ]; do
   case $1 in
       -f | --file )           shift
                               filename=$1
                               ;;
       -i | --interactive )    interactive=1
                               ;;
       -h | --help )           usage
                               exit
                               ;;
       * )                     usage
                               exit 1
   esac
   shift
done

такой вариант тоже норм?
Можно просто while true; do ...
источник

∀lǝxǝʎ in pro.bash
Alex
while [ "$1" != "" ]; do
   case $1 in
       -f | --file )           shift
                               filename=$1
                               ;;
       -i | --interactive )    interactive=1
                               ;;
       -h | --help )           usage
                               exit
                               ;;
       * )                     usage
                               exit 1
   esac
   shift
done

такой вариант тоже норм?
тогда эта проверка просто уйдёт внутрь, зачем?
источник

AG

Artemy Gevorkov in pro.bash
Можно забить на передачу параметров через = / не = через такой небольшой хак:
источник

AG

Artemy Gevorkov in pro.bash
источник
2021 February 11

A

Alex in pro.bash
подскажите как с помощь awk взять из строки подстроку разделенную |
| data | data1 | data2 | data3 |
источник

∀lǝxǝʎ in pro.bash
Alex
подскажите как с помощь awk взять из строки подстроку разделенную |
| data | data1 | data2 | data3 |
awk -F'|' '{print $2}'
источник

Лс

Лень с Самосознанием... in pro.bash
Alex
подскажите как с помощь awk взять из строки подстроку разделенную |
| data | data1 | data2 | data3 |
Это может и куда более лёгкий cut
cut -d \| -f2
источник

∀lǝxǝʎ in pro.bash
Лень с Самосознанием
Это может и куда более лёгкий cut
cut -d \| -f2
если так рассуждать то вообще незачем внешние тулзы дёргать
IFS='|' read -r -a x <<< '| data | data1 | data2 | data3 |'
источник

Лс

Лень с Самосознанием... in pro.bash
Ну кстати
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
если так рассуждать то вообще незачем внешние тулзы дёргать
IFS='|' read -r -a x <<< '| data | data1 | data2 | data3 |'
Только ты забыл вывод, допиши
print $x[1]
источник

∀lǝxǝʎ in pro.bash
Лень с Самосознанием
Только ты забыл вывод, допиши
print $x[1]
что за php'шные замашки?
echo "${x[2]}"
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
что за php'шные замашки?
echo "${x[2]}"
Вот да, я что-то намудрил с синтаксисом
источник

∀lǝxǝʎ in pro.bash
printf '%s\n' "${x[1]}"
ну если хочется что-то не echo
источник

F

Fljúgandi Kettlingur... in pro.bash
Лень с Самосознанием
Это может и куда более лёгкий cut
cut -d \| -f2
| забыл заэскейпить
cut -d \|
cut -d '|'
источник

n

nod in pro.bash
Code:
VAR='-g "12,34 56x78"'
echo ${VAR}
Output:
-g "12,34 56x78"
Debug:
++ COMMAND_LINE='-g "12,34 56x78"'
++ echo -g '"12,34' '56x78"'
Как сделать так, чтобы баш просто подставлял мне при вызове echo -g "12,34 56x78" на место VAR без вот этих вот одинарных кавычек?
источник
2021 February 12

∀lǝxǝʎ in pro.bash
nod
Code:
VAR='-g "12,34 56x78"'
echo ${VAR}
Output:
-g "12,34 56x78"
Debug:
++ COMMAND_LINE='-g "12,34 56x78"'
++ echo -g '"12,34' '56x78"'
Как сделать так, чтобы баш просто подставлял мне при вызове echo -g "12,34 56x78" на место VAR без вот этих вот одинарных кавычек?
а что не так-то? Всё правильно же работает, да и чего от дебага хочется-то?
источник

n

nod in pro.bash
∀lǝxǝʎ
а что не так-то? Всё правильно же работает, да и чего от дебага хочется-то?
В случае echo правильно. А теперь реальная (хоть и упрощенная) ситуация:
Code:
VAR='-g "2049,46 683x722"'
grim ${VAR} -
Output:
invalid geometry
Debug
+ VAR='-g "2049,46 683x722"'
+ grim -g '"2049,46' '683x722"' -
invalid geometry
Я пока дебаг не включил, часа пол не мог понять, почему echo правильно печатает, но когда подставляю реальную команду, то всё ломается.
источник

n

nod in pro.bash
Он должен получать grim -g "2049,46 683x722"
источник

n

nod in pro.bash
Получение самой VAR (чтобы не упрощать):
VAR="-g \"$(swaymsg -t get_tree | jq -r '.. | select(.focused?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"')\""
Debug:
+ VAR='-g "2049,46 683x722"'
источник