#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)