0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

findで検索元のディレクトリを結果から外したい

Last updated at Posted at 2016-08-27

以下のようなことをしたい

$ find $dir -name $name

をやったあとの結果として

$dir/{result}
...

みたいな感じになるが、
検索元のディレクトリを外して

{result}

だけが取得したい

awkを使う方法

find $dir -name $name | awk -F$dir/ '{print $2}'

区切り自体を$dirにして
{result}だけを取得する方法

職場のスクリプトでこれを使ってしまったのだが、
正直今考えてみるとあまりおすすめはしない

なぜなら区切り自体が$dirになるので
{result}の中に万が一

$dirが含まれてしまっていた場合、
予測していた結果にならないから

cutを使う方法

find $dir -name $name | cut -c `echo $dir/ | wc -m`-

素直に頭から$dirの文字数分
抜き出すというもの

一番こっちが確実みたいなので、
明日職場のスクリプトを書直そう

0
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?