このスクリプトを実行すると:
#!/bin/bash
# internet-status.sh
# ==================
now=$(date +%F)
cmd_output=$(nc -dzvw1 8.8.8.8 443 2>&1)
logfile_string=$("[$now] $cmd_output")
logfile=$("$HOME/internet.log")
$logfile_string >> "$logfile"
次を返します。
/home/xxxx/internet.log: Permission denied
internet-status.shでchmod u + xを実行しました。
権限は次のとおりです。
-rw-rw-rw- internet.log
そして
-rwxrw-r-- internet-status.sh
ベストアンサー1
$(...)
はコマンドの置き換え。
Anddate +%F
とnc -dzvw1 8.8.8.8 443 2>&1
はコマンドで"[$now] $cmd_output"
あり、"$HOME/internet.log"
単に文字列にすぎず、次のように割り当てる必要があります。
logfile_string="[$now] $cmd_output"
logfile="$HOME/internet.log"
echo
その後、ファイルに文字列を追加できます。
echo "$logfile_string" >> "$logfile"