LeetCode Shell
2017-02-14 10:53
387 查看
192. Word Frequency
cat words.txt | tr -s ' ' '\n' | sort | uniq -c | sort -rn | awk '{print $2" "$1}'tr -s: 使用指定字符串替换出现一次或者连续出现的目标字符串(把一个或多个连续空格用换行符代替);
sort: 将单词从小到大排序;
uniq -c: uniq用来对连续出现的行去重,-c参数为计数;
sort -rn: -r 倒序排列, -n 按照数值大小排序;
awk '{ print $2, $1 }': 格式化输出,将每一行的内容用空格分隔成若干部分,$i为第i个部分。
193. Valid Phone Numbers
cat file.txt | grep -Eo '^(\([0-9]{3}\) ){1}[0-9]{3}-[0-9]{4}$|^([0-9]{3}-){2}[0-9]{4}$'^(\([0-9]{3}\) ){1}[0-9]{3}-[0-9]{4}$ 匹配形如(123) 456-7890的电话号码
^([0-9]{3}-){2}[0-9]{4}$ 匹配形如987-123-4567的电话号码
194. Transpose File
awk '{for (i = 1; i <= NF; ++i){
if (NR == 1) s[i] = $i;
else s[i] = s[i] " " $i;
}
} END{
for (i = 1; s[i] != ""; ++i){
print s[i];
}
}' file.txt
和C语言类似
NF:每一行拥有的字段总数,即:列
NR:目前awk所处理的是“第几行”数据,即:行
195. Tenth Line
awk:awk 'NR == 10' file.txtsed:
sed -n "10p" file.txt
相关文章推荐
- 【leetcode~Shell】:Tenth Line
- 【leetcode~Shell】:Tenth Line
- leetcode-shell-192. Word Frequency
- [Leetcode Shell] Transpose File
- leetcode-shell-194. Transpose File
- 【Leetcode Shell】Tenth Line
- LeetCode:Shell题目
- [LeetCode][Shell]Tenth Line
- leetcode 的shell部分4道题整理
- leetcode 新题型----SQL,shell,system design
- 【leetcode-shell】Tenth Line
- LeetCode Shell Problems
- leetcode-shell-195. Tenth Line
- LeetCode:solution of shell problems
- LeetCode 195. Tenth Line (shell)
- leetcode 新题型----SQL,shell,system design
- Leetcode: Word Frequency (shell , awk)
- 【Leetcode Shell】Valid Phone Numbers
- [Leetcode Shell]Word Frequency
- shell 和 python3 :Word Frequency(leetcode192-t11.sh)