前提・実現したいこと
対象テキスト($1)に重複があるかチェックするための条件式が正常に作動するようにしたい。
重複データの抽出は問題なく機能している。
発生している問題・エラーメッセージ
check.sh: 行 10: [!: コマンドが見つかりません
該当のソースコード(check.sh)
#!/bin/bash #チェック結果の出力先 TXT=/home/test/checked.txt #重複があるかチェックする sort $1 | uniq -d > $TXT #条件式で重複があるかどうかメッセージを出す #ファイルサイズが0でなければ作動 if [! -s "$TXT" ]; then echo "重複がありました。" else echo "重複はありませんでした。" fi
#対象テキスト(test.txt)
aaabbbcccddd bbbcccdddaaa cccdddaaabbb dddaaabbbccc bbbcccdddaaa aaabbbcccddd
試したこと
①フルパスでコマンド実行した:"sh /home/test/check.sh test.txt"
→エラー変わらず
②改行コードの確認"cat -e check.sh"
→LFコードである"$"が表示される
③"file check.sh"でも確認
→"check.sh: Bourne-Again shell script, Non-ISO extended-ASCII text executable"と表示される
補足情報
動作環境:teraterm
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/26 01:27
2021/10/26 01:28
2021/10/26 01:30