以下のデータを含むフォルダを作成する必要があります。
フォルダ名は列1に基づいて一意に指定する必要があります。各フォルダA、B、C、Dの内容は、2列の対応する値でなければなりません。
また、各フォルダのアイテムの総数が必要です。
例えば。 「B」というフォルダには、フォルダ「B」の最後の行の総数である「3」という一意の行番号で、「B、B1、B2」が必要です。
データは次のとおりです。
col1 col2
A A
B B
B B1
B B2
C C1
C C2
C C3
D D1
D D2
ベストアンサー1
「フォルダの内容」がどういう意味なのかよくわかりません。これはディレクトリですか、それとも一種のファイルですか?ディレクトリを簡単に作成できる場合:
< /tmp/input.txt xargs -n2 bash -c 'mkdir -p $0/$1'
これは/tmp/input.txt
、入力ファイル(例では)から一度に2つの引数を単純なbashスクリプトに送信することを意味しますmkdir -p $0/$1
。これは、最初のパラメータ()が一番上にあり、2番目のパラメータが最初のパラメータ()の下にあるディレクトリを繰り返しmkdir -p
生成することを意味します。$0
$1
ディレクトリの代わりにファイルを生成するには、次のように変更できます。
< /tmp/input.txt xargs -n2 bash -c 'mkdir -p $0;touch $0/$1'
echo
次のコマンドを挿入して進行状況を確認できます。
< /tmp/input.txt xargs -n2 bash -c 'echo mkdir -p $0;echo touch $0/$1'
mkdir -p A
touch A/A
mkdir -p B
touch B/B
mkdir -p B
touch B/B1
mkdir -p B
touch B/B2
...
-p
ディレクトリがすでに存在する場合は、失敗しないように ""フラグがまだ必要です。mkdir
mkdir