Я собирался выложить большой фрагмент кода оболочки в файл ~ / .zshrc. я ожидал, что исходный контент будет показан в файле ~ / .zshrc, но что мне нравится в этом файле, так это результат «рендеринга» контента. Я ожидал исходное содержимое файла.
Я пытался добавить одну цитату из всего содержимого. но это не работает, потому что в контенте есть как одинарные, так и двойные кавычки.
ниже приведен мой фрагмент кода:
cat << EOF > ~/.zshrc
zsh_wifi_signal(){
local output=$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I)
local airport=$(echo $output | grep 'AirPort' | awk -F': ' '{print $2}')
if [ "$airport" = "Off" ]; then
local color='%F{black}'
echo -n "%{$color%}Wifi Off"
else
local ssid=$(echo $output | grep ' SSID' | awk -F': ' '{print $2}')
local speed=$(echo $output | grep 'lastTxRate' | awk -F': ' '{print $2}')
local color='%F{black}'
[[ $speed -gt 100 ]] && color='%F{black}'
[[ $speed -lt 50 ]] && color='%F{red}'
echo -n "%{$color%}$speed Mbps \uf1eb%{%f%}" # removed char not in my PowerLine font
fi
}
EOF
что в ~ / .zshrcчто-то вроде:
zsh_wifi_signal(){
local output= agrCtlRSSI: -53
agrExtRSSI: 0
agrCtlNoise: -92
agrExtNoise: 0
state: running
op mode: station
lastTxRate: 702
maxRate: 867
lastAssocStatus: 0
802.11 auth: open
link auth: wpa2-psk
BSSID: 8c:a6:df:18:ac:5f
SSID: 99cloud_5G
MCS: 8
channel: 149,80
local airport=
if [ "" = "Off" ]; then
local color='%F{black}'
echo -n "%{%}Wifi Off"
else
local ssid=
local speed=
local color='%F{black}'
[[ -gt 100 ]] && color='%F{black}'
[[ -lt 50 ]] && color='%F{red}'
echo -n "%{%} Mbps \uf1eb%{%f%}" # removed char not in my PowerLine font
fi
, что кажется оправданным.
Я ожидал чего-то подобного ниже в файле ~ / .zshrc
zsh_wifi_signal(){
local output=$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I)
local airport=$(echo $output | grep 'AirPort' | awk -F': ' '{print $2}')
if [ "$airport" = "Off" ]; then
local color='%F{black}'
echo -n "%{$color%}Wifi Off"
else
local ssid=$(echo $output | grep ' SSID' | awk -F': ' '{print $2}')
local speed=$(echo $output | grep 'lastTxRate' | awk -F': ' '{print $2}')
local color='%F{black}'
[[ $speed -gt 100 ]] && color='%F{black}'
[[ $speed -lt 50 ]] && color='%F{red}'
echo -n "%{$color%}$speed Mbps \uf1eb%{%f%}" # removed char not in my PowerLine font
fi
}
я также началпроблема в myrep