2010-11-20 8 views
3

どのように2つの結果に参加できますか? - ファイルが2つの異なるディレクトリにあり、異なる方法で並べ替える必要があるため、これが必要です。Bash join lsの出力

とにかく出力のために、私は両方の結果で通常のリストを必要とします。

答えて

2
(ls <first dir>; ls <second dir>) | sort ... 
1

これはそれを行う必要がありますから、これを手に入れた

{ ls folder1 && ls folder2; } 

は、この例を試してみてください。

{ ls /etc/fonts && ls /etc/init; }|while read i; do echo $i; done 

(希望しない場合は、これらのフォルダがありますか?)

+0

なぜ '&&'ではなく 'ため、printfのをサポートしている場合は、出力をカスタマイズすることができます;'コマンドの区切りとして? – Benoit

+1

最初のコマンドが失敗した場合、2番目のコマンドを実行しないという理由はありません。 –

+0

@Benoit:これはとても良い習慣です。この場合はそれほど重要ではありませんが、最初のコマンドが失敗したあとで、後のコマンドが非常に奇妙な予期しないことをする可能性があります。 – Cascabel

4

lsを2回実行する必要はなく、引数として複数のファイル指定を入れるだけです。

ls /path/to/first_file_spec* /different_path/to/second_file_spec* 
+0

'ls'ごとに異なるスイッチを使用する必要がある場合はどうなりますか? – Thevs

0

おそらくfindそのため、ここでより有用である「ディレクトリ:」それは与えられていますときls引数として複数のディレクトリを使用するようにフォーマット。

find /etc/dpkg/ /etc/apt -mindepth 1 -maxdepth 1 | sort 

あなたの検索を例

find /etc/dpkg/ /etc/apt -mindepth 1 -maxdepth 1 -printf "%f\n" | sort 
関連する問題