#navi(../)
* lsコマンドで取得したパスつきファイル名をファイル名だけ抽出する方法 [#q3a38a4b]

下記のようなlsコマンドで取得したファイル一覧のファイル名だけを取得する方法を記述します。~
みなさん要求や環境によってはによっては、findコマンドでファイル一覧を取得したほうが良いかもしれません。

 [sakura@centos ~]$ ls /etc/init.d/a*
 /etc/init.d/acpid    /etc/init.d/atd     /etc/init.d/avahi-daemon
 /etc/init.d/anacron  /etc/init.d/auditd  /etc/init.d/avahi-dnsconfd
 /etc/init.d/apmd     /etc/init.d/autofs

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* xargsとbasenameを使った例 [#t1629f03]
xargsコマンドに-iをつけ{}にlsコマンドで取得したリストを引数として渡すことを伝えています。~
みなさん要求や環境によっては、lsのところをfindにしてもいいかもしれません。
 [sakura@centos ~]$ ls /etc/init.d/a* | xargs -i basename {}
 acpid
 anacron
 apmd
 atd
 auditd
 autofs
 avahi-daemon
 avahi-dnsconfd

上記結果をみると/etc/init.dディレクトリ内のaから始まるファイル一覧のファイル名だけを取得しています。

*関連資料 [#b2ed450d]
- [[逆引きUNIXコマンド/ディレクトリ文字列を削除しファイル名のみを抽出する方法]] - basenameコマンドを利用
- [[逆引きUNIXコマンド/ファイルのフルパス名を取得する方法]] - findコマンドを利用
- [[逆引きUNIXコマンド/lsコマンドで取得したパスつきファイル名をファイル名だけ抽出する方法]] - ls, xargs, basename

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS