2. nohup sh title_count.sh >>out.log 2>&1 & (可以把代碼放到後臺運行)
3.ctrl+r 搜索之前的命令,ctrl+shift+c退出
4.shell裏面要想使用.bashrc中的變量,要shell的開頭使用source ~/.bashrc,使變量生效,或者使用絕對路徑
5.shell 裏面多命令行的分隔符 “\” 的後面不能加空格,否則’‘\' 會有不一樣的顏色
6.set -x 打印shell中執行的命令
7.查看日誌,可以用tailf 命令,看出最新寫入的日誌
8.hadoop 的task數量就是最後reslut 分割幾個部分也就是有多少reduce
9.在使用hadoop前,可以先從hdfs拉下來一些數據測試效果,用
hadoop fs -get /app/ecom/fcr-model/renxiaohu/asp/extract_asp/20170306/294/part-00002 ./input.sample命令拉數據
用cat input.sample |python map.py|less;cat input.sample |python map.py|sort|python red.py|less的命令測試
10.查看hdfs的內容命令 hadoop fs -ls /app/ecom/fcr-model/renxiaohu/asp/extract_asp/20170306/294|head
11.kill hadoop job的命令: /home/users/sunmengqi/hadoop-client-mulan-fcr-ad/hadoop/bin/../bin/hadoop job -Dmapred.job.tracker=nmg01-mulan-job.dmop.baidu.com:54311 -kill job_20161223153354_2527739
12.可以使用ctrl+u快速刪除錯誤命令
13.streaming 參數裏面
第一個的意思:reduce裏面的key按照前幾列排序
第二個的意思:按照前幾列進行partiton
14.如果vim裏面的換行縮進不能用了就說明前面有問題,導致不能識別出來是新的函數體15. linux 的命令行,如果命令太長會出現在下一行
(-L不能少)
16比如
hadoop fs -text 路徑/part-00000|head|awk -F"\t" '{print $10}'
看第10列都是些什麼值
17.找出某一行的某一列,是否包含特定的字段,並打印出來
18.
import os
mapinputfile = os.environ["map_input_file"]
if mapinputfile.find("輸入路徑的一部分") >= 0: