Linux命令(vi,權限,軟連接,系統命令,壓縮解壓,定時任務,後臺運行)

1.vi
包含三種模式:尾行模式(:),命令行模式(vi 命令進入的默認模式),編輯模式(a,i,o)
命令行模式:
dd:刪除當前行
dG(先輸入d,在輸入shift+g) :刪除光標所在行及以下的所有行
ndd:刪除光標所在行及以下的n-1行

gg:跳轉到第一行的首字母
G:跳轉到最後一行的首字母
shift+$:跳轉到當前行的行尾
0:跳轉到當前行的行首 

vi清空這個文件:
gg+dG     真正清空 0字節 但是文件內容假如很大  加載肯定很慢 

echo "" > install.log  僞清空 1個字節
echo '' > install.log  僞清空 1個字節 
-rw-r--r--. 1 root root         1 Jun 22 20:20 install.log

cat /dev/null > install.log  真正清空 0字節

在命令行模式下設置行號或取消行號
set nu
set nonu

搜索:
尾行模式 /xxx  按n向下  N向上

想要跳轉到最後1行編輯
G -> shift+$ (跳到當前光標所在行的行尾)| shift+a(跳到當前光標所在行的行尾)| i(跳到當前光標所在行的行首)

2.權限
chown  改變用戶 用戶組
chmod  改變讀寫執

drwxr-xr-x. 2 root root      4096 Jun 12 22:41 Downloads
-rw-r--r--. 1 root root      1012 Jun 15 21:46 error.log
第一位字母: d文件夾 -文件 l連接

r:讀 4
w :寫 2
x:執行 1 表示shell腳本有執行權限
- :沒有任何權限  0

4+2=6

rwx r-x r-x
第一組 rwx 7 代表文件和文件夾所屬的 用戶的權限: 讀寫執
第二組 r-x 5 代表文件和文件夾所屬的 用戶組的權限: 讀執
第三組 r-x 5 代表其他組的所有用戶對這個文件或文件夾權限: 讀執

root 用戶
root 用戶組

chown  改變用戶 用戶組
chmod  改變讀寫執

rw-r--r-- 644 

針對文件夾操作 
chown -R test:test software
chmod -R 777  software

-R參數: chown chmod,遞歸
-r參數:其他的命令,遞歸
777 代表所有人都有最大權限 讀寫執

rwxrwxr-x  775
rw-r--r-x 645
-------r-- : root 可以讀,因爲是root用戶,寫的時候,wq!
工作上:
1.不會給你root 假如給你root 開心
2.假如給你賬號  有sudo權限 無密碼認證   開心
3.假如給你賬號  就是普通賬號  且沒有sudo權限  一般只在自己的家目錄做事情 和可以去的文件夾和文件
4.一臺服務器 不可能只運行1個服務 很多服務
比如 mysql  對應的用戶去運行 比如mysqladmin用戶
     hdfs                        hadoop用戶
    
    你們的用戶  能不能 su - mysqladmin? 能

---------------------------------------------------
3.軟連接 
相當於windows的快捷鍵

[ruoze@hadoop001 ~]$ mkdir ruozedatav1.0
[ruoze@hadoop001 ~]$ ll
total 4
drwxr-xr-x. 2 ruoze bigdata 4096 Jun 22 21:35 ruozedatav1.0
[ruoze@hadoop001 ~]$ ln -s  ruozedatav1.0  rz
[ruoze@hadoop001 ~]$ ll
total 4
drwxr-xr-x. 2 ruoze bigdata 4096 Jun 22 21:35 ruozedatav1.0
lrwxrwxrwx. 1 ruoze bigdata   13 Jun 22 21:35 rz -> ruozedatav1.0
[ruoze@hadoop001 ~]$ 

場景:
1.多版本 
2.硬盤
目錄/home/ruoze/所在硬盤的存儲空間還剩100M ,將此目錄移動到容量充足的硬盤(存儲空間  10T )的目錄/data/xxx ,重新做軟連接
注意 :所屬的權限 用戶 用戶組的變化 修正

[root@hadoop001 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        38G  3.9G   32G  11% /
tmpfs          1000M   72K 1000M   1% /dev/shm
/dev/sda1       194M   34M  151M  19% /boot
/dev/sda3        2T  30G   999G  0.1% /data01
/dev/sda3        2T  30G   999G  0.1% /data02
/dev/sda3        2T  30G   999G  0.1% /data03
/dev/sda3        2T  30G   999G  0.1% /data04
[root@hadoop001 ~]# 

/ 根目錄一般生產上 最多的是100G

4.系統命令

[hadoop@hadoop002 shell]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G   21G   17G  57% /
tmpfs           3.9G   16K  3.9G   1% /dev/shm
tmpfs           3.9G  7.8M  3.9G   1% /var/run/jdcloud/cache
[hadoop@hadoop002 shell]$ free -m
             total       used       free     shared    buffers     cached
Mem:          7872       4052       3820          7        148       1130
-/+ buffers/cache:       2773       5099
Swap:            0          0          0
[hadoop@hadoop002 shell]$ top

第一行的 load average: 2.08, 2.06, 2.01
2.08, 2.06, 2.01 分別表示1min  5min 15min系統cpu負載
驗值:生產上 <=10 表示系統比較正常, >10 系統負載高,系統會很卡 ,有可能是服務而問題,還可能是硬件內存條的問題等

    80-200之間  內存條 損壞 物理 重啓服務器 起不來
    服務問題 

shutdown -n now 立即關機
reboot 重啓  等1min  ping ip5.解壓壓縮
5 zip 和 tar 
zip

[root@hadoop001 ruozedata]# mkdir test
[root@hadoop001 ruozedata]# cd test/
[root@hadoop001 test]# touch 1.log
[root@hadoop001 test]# cd ../
[root@hadoop001 ruozedata]# ll
total 4
drwxr-xr-x. 2 root root 4096 Jun 22 22:11 test

[root@hadoop001 ruozedata]# zip -r  test.zip test/*

  adding: test/1.log (stored 0%)
[root@hadoop001 ruozedata]# ll
total 8
drwxr-xr-x. 2 root root 4096 Jun 22 22:11 test
-rw-r--r--. 1 root root  170 Jun 22 22:12 test.zip
[root@hadoop001 ruozedata]# rm -rf test
[root@hadoop001 ruozedata]# ll
total 4
-rw-r--r--. 1 root root 170 Jun 22 22:12 test.zip

[root@hadoop001 ruozedata]# unzip test.zip 
Archive:  test.zip
 extracting: test/1.log              
[root@hadoop001 ruozedata]# ll
total 8
drwxr-xr-x. 2 root root 4096 Jun 22 22:12 test
-rw-r--r--. 1 root root  170 Jun 22 22:12 test.zip
[root@hadoop001 ruozedata]# ll test
total 0
-rw-r--r--. 1 root root 0 Jun 22 22:11 1.log
[root@hadoop001 ruozedata]# 

tar.gz
tar -xzvf xxx.tar.gz
tar -czvf xxx.tar.gz test/*

[root@hadoop001 ruozedata]# ll
total 8
drwxr-xr-x. 2 root root 4096 Jun 22 22:12 test
-rw-r--r--. 1 root root  170 Jun 22 22:12 test.zip
[root@hadoop001 ruozedata]# tar -czvf test.tar.gz test/*
test/1.log
[root@hadoop001 ruozedata]# ll
total 12
drwxr-xr-x. 2 root root 4096 Jun 22 22:12 test
-rw-r--r--. 1 root root  114 Jun 22 22:16 test.tar.gz
-rw-r--r--. 1 root root  170 Jun 22 22:12 test.zip
[root@hadoop001 ruozedata]# rm -rf test
[root@hadoop001 ruozedata]# tar -xzvf test.tar.gz 
test/1.log
[root@hadoop001 ruozedata]# 

6.wget和sz
wget  url下載連接地址
window ==> sz 上傳

7.定時任務或者調度
crontab 

[root@hadoop001 tmp]# crontab -l
* * * * * /tmp/date.sh >> /tmp/date.log 

分 小時 日 月 周

* 表示 每

1.每隔2分鐘
*/2 * * * *
2/* 錯誤2.每隔10s執行
1min 6次

[root@hadoop001 tmp]# cat date.sh 
#!/bin/bash

for((i=1;i<=6;i++))
do
    echo "wwww.ruozedata.com"
    date
    sleep 10s
done
exit

不需要的時候可以直接在 contab -e 下 # 註釋掉

8.後臺執行
./date.sh & 並不是真正後臺執行  會話
nohup ./date.sh &   
[root@hadoop001 tmp]# cat  nohup.out
www.ruozedata.com
Sat Jun 22 22:44:13 CST 2019
[root@hadoop001 tmp]# 

nohup ./date.sh >> /tmp/date.log 2>&1 & 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章