Home > 備忘録 > 言語関連 > シェルスクリプト > 雑記( 15 )
#! /bin/sh
wget http://ssssssssssssss 2>&1 | grep '保存完了'
if [ "$?" -eq "0" ];then
echo '成功した時の処理'
else
echo '失敗した時の処理'
fiディレクトリー名やファイル名に空白が含まれる場合も検索が可能で、ファイルタイプは拡張子を指定すると便利です。-print0オプションを有効にすると区切り文字がスペースから null に変更して検索できます。
#! /bin/sh
find '検索ディレクトリー名' -type f -name 'ファイルタイプ' -print0 | xargs -0 grep '検索文字列'
例:ディレクトリー「/」の「*.php」の中から「東京」と記載されているファイルを見つけ出す
find / -type f -name '*.php' -print0 | xargs -0 grep '東京'コマンドの結果を変数に代入してecho文で出力した時に形が崩れる。これをコマンド実行結果と同じように出力することを考えてみた。 hostname を例に使用します。
コマンドの実行
[root@server]# hostname※出力結果
leom.mydns.jp#!/bin/sh
ff=$(hostname)
echo $ff※出力結果
leom.mydns.jp#!/bin/sh
ff=$(hostname)
echo "$ff" ← 変数をダブルクォーテーションで囲む※出力結果
leom.mydns.jp