2011-01-17 3 views
3


後、私はここのコード持って改行を削除します。シェルコマンド

#/bin/sh 

cd ~/Desktop/tmp 
date "+%m%d%y_%H%M%S_" | xargs -0 mkdir; 

これは、現在の日付とディレクトリが作成されますが。
ここでの問題は、dateコマンドが末尾に改行文字を含む日付を返すことです。
mkdirの後に、作成されたフォルダに改行が含まれます。
誰でもこれについてどうやって行くのか知っていますか?改行文字なしのフォルダ名が必要です。
ありがとうございます。

答えて

6

なぜそれをxargsに渡す必要がありますか?改行が含まれていたことを不要

mkdir $(date "+%m%d%y_%H%M%S_") 
2

理由をしないでください、あなたはxargsのは、ワード境界としてNULLバイト(ASCII 000)を使用します-0オプションを、使用していることです。改行は単語の一部として含まれます。 -0を削除すると、xargsは空白(改行を含む)を境界として使用し、それを切り捨てます。

ただし、ghostdog74のソリューションを使用すると簡単です。

関連する問題