2014-04-17 179 views
0

假設分離字符串我有一個包含文件格式如下的文件夾:使用Linux命令

hostname.anothername.ouut.ext 
filename.another.anot.xxx 

現在我想那是在另一個文件中的第一點和列表裏面的字符串分開。 什麼應該是linux命令?在這裏,主機名就在名字裏面。我的輸出將在一個單獨的文件中。以下輸出格式給出:

hostname 
    filename 

我只能分開這句話像hostname.xxxxx.yyyy包含文件的文本, filename.xxxx.tttt等使用

 cut -d. -f1 <<END hostname.anothername.ouut.ext filename.another.anot.xxx END 

但hostnae.xxxxx .yyyy,filename.uuuu.xxxxx等不是文本,這些文件包含在一個文件夾中。

+3

我不明白的問題......有人能解釋一下嗎? '第一個點'內部是什麼意思? – iamauser

+1

最好不要讓我們猜測你的意思。請編輯您的問題,以包含您的樣本輸入的預期輸出以及您嘗試過的代碼。祝你好運。 – shellter

回答

1

cut將是最簡單的解決方案:

cut -d. -f1 <<END 
hostname.anothername.ouut.ext 
filename..another.anot.xxx 
END 
hostname 
filename 

for file in *; do 
    prefix=${file%%.*} 
    echo "$prefix" 
done 
+0

我的內容不在文件中。這些在一個文件夾中。假設你有一個文件夾,它包含一些像hostname.somename.ext,filename.anothername.txt等文件。您可以針對此問題製作相同的輸出,並將所有輸出顯示在另一個單個文件中... – user3464541

+0

@ user3464541,已更新 –