パスの最後のディレクトリ名・ファイル名を抽出

Linuxコマンドawk

 状態:-  閲覧数:666  投稿日:2017-02-03  更新日:2017-02-03
▼hoge.sh
#!/bin/bash

DIR="/home/hoge/piyo"
str=`echo ${DIR} | awk -F "/" '{ print $NF }'`
echo ${str}




forループで使用した際



str=`echo ${filepath} | awk -F "/" '{ print $NF }'`

×
str=`basename ${filepath}`


しかし、forループだから×ではないみたい
bash では basename や dirname を使うより ${0##*/} や ${0%/*} を使ったほうが速い?
パス文字列からファイル名などを抜き出す
bashの変数展開によるファイル名や拡張子の取得



パスの最後のディレクトリ名・ファイル名を抽出する




類似度ページランキング
順位 ページタイトル抜粋
1 CentOSで、指定ディレクトリ以下の「ファイル内容」を全文置換 44
2 ディレクトリごと移動 38
3 カレントディレクトリ配下の「指定拡張子ファイル」内に「指定文字列」が含まれているものを検索する 35
4 ディレクトリへ設定する特殊なアクセス権 34
5 Linuxのディレクトリ構成をWindowsと比較 34
6 ディレクトリ ` 33
7 指定ディレクトリ内の「特定拡張子のファイル」のみ削除 / find の -delete オプションを使用 32
8 ドメイン変更に耐え得るディレクトリ構成へ変更 32
9 CentOSで「指定ディレクトリ下層に複数存在する指定ディレクトリ」内にある全ファイルを削除するシェルスクリプト 31
10 PHPをインストールすると、どうなるの? 29
11 CentOSで、指定ディレクトリ以下の「ディレクトリ名」の置換リネーム、「ファイル名」の置換リネーム、「ファイル内容」の全文置換 28
12 CentOS7 で設定ファイルのチェック後、Nginx起動 27
13 Windows/コマンドで、ディレクトリ毎削除 27
14 ファイルサイズ0の画像をアップロードしてしまうと上書き出来ない 26
15 リダイレクト > >> < << 26
16 nkfインストール 26
17 4回目-5.ファイアーウォールの設定 25
18 5回目-5.ファイアーウォールの設定 25
19 7回目-5.ファイアーウォールの設定 25
20 6回目-5.ファイアーウォールの設定 25
2022/5/18 20:58 更新
週間人気ページランキング / 5-11 → 5-17
順位 ページタイトル抜粋 アクセス数
1 さくらVPSへは「http://localhost」でアクセス出来ない | さくらVPSにてWebサービス運営(さくらVPS) 24
1 Python 3.5 アンインストール / yum remove | Python(プログラミング言語) 24
2 「RLogin」で文字化けするようになった場合は、オプション設定 - フォント - 文字セット -「UTF-8」を選択します。  | RLogin(ターミナルエミュレータ) 17
3 さくらVPS0 16
4 MeCab Full-Text Parser Plugin のインストール | MySQL(データベース) 14
5 phpの設定ファイルをphp.ini から分離させても良いの? 12
6 echo と cat の違い 11
7 PHPのmb_send_mail関数でメール送信できない | メール処理システム 10
8 Reached target Shutdown メッセージが表示されたあと、シャットダウンまたは再起動プロセスがハングアップする | CentOS 7 (CentOS) 9
8 config.inc.php修正したが、反映方法が不明 / 迷走開始 9
8 インストール先確認 / インストールされたphpMyAdminのバージョンを確認 9
8 sedコマンド使用例 | sed(Linuxコマンド) 9
8 Nginx設定。エラーログレベル | Nginx(Webサーバ) 9
8 mailxとは? / インストール済か確認 / mailコマンドの実体はmailxコマンド 9
9 phpMyAdmin 環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています 8
9 ABRT により 問題が検出されました | CentOS 7 (CentOS) 8
9 ImageMagick 6.7.2.7-2.el6 を yum アンインストール / ImageMagick 6.8.8-9 を make アンインストール | ImageMagick(ソフトウェアスイート) 8
9 499 (Request has been forbidden by antivirus) | HTTP(通信プロトコル) 8
10 Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast | Yum(パッケージマネージャー) 7
11 Let's Encrypt certificate expiration notice for domain メールを受信したら / Let's Encrypt certificate expiration notice for domain メール対応 / ログ 6
2022/5/18 1:01 更新