linux基本命令,目錄文件操作


GNU是一個自由軟件操作系統—就是說,它尊重其使用者的自由。GNU操作系統包括GNU軟件包(專門由GNU工程發布的程序)和由第三方發布的自由軟件。GNU的開發使你能夠使用電腦而無需安裝可能會侵害你自由的軟件。

我們很熟悉的Linux就是采用了GPL.GPL協議和BSD, Apache Licence等鼓勵代碼重用的許可很不一樣.GPL的出發點是代碼的開源/免費使用和引用/修改/衍生代碼的開源/免費使用,但不允許修改后和衍生的代碼做為閉源的商業軟件發布和銷售.這也就是為什么我們能用免費的各種linux,包括商業公司的linux和linux上各種各樣的由個人,組織,以及商業軟件公司開發的免費軟件了.

  GPL協議的主要內容是只要在一個軟件中使用(“使用”指類庫引用,修改后的代碼或者衍生代碼)GPL協議的產品,則該軟件產品必須也采用 GPL協議,既必須也是開源和免費.這就是所謂的“傳染性”.GPL協議的產品作為一個單獨的產品使用沒有任何問題,還可以享受免費的優勢.

  由於GPL嚴格要求使用了GPL類庫的軟件產品必須使用GPL協議,對於使用GPL協議的開源代碼,商業軟件或者對代碼有保密要求的部門就不適合集成/采用作為類庫和二次開發的基礎.

  最常見的開源協議,使用它作為授權協議的有大名鼎鼎的 Linux .GPL最顯著的兩個特點就是網上稱為的“病毒性傳播”和“不允許閉源的商業發布”.

 

 

修改網卡
1.修改配置文件名稱
/etc/sysconfig/network-scripts/
 名稱為:ifcfg-xxx
2.修改配置文件內的 device 和name
3.修改內核參數
vi /etc/sysconfig/grub
quiet 前加入 net.ifnames=0 biosdevname =0
4.更新參數
grub2-mkconfig -o /boot/grub2/grub.cfg
5.重啟
shutdown -r now
```

# 遠程連接出現異常的排查思路


01. 確保網絡鏈路是否通暢
ping IP地址信息

解決問題:
a. 虛擬網絡設置是否正確
b. 虛擬主機網卡設置
c. 虛擬主機系統中網絡地址配置
d. 在系統的服務中(window+r->services.msc vmware nat services 是否開啟)
e. 確認物理主機上有和虛擬主機相同虛擬網卡信息(地址配置正確)

02. 有你的女朋友阻止你

解決問題:
a. 網絡安全服務進行了阻止(iptables firewalld 防火牆服務)


03. telnet 地址信息 服務端口號

解決問題:

a. 確認遠程連接服務是否開啟
b. 確認服務端口號信息是否發生了變化

 

 

關機

shutdown   halt關閉不切電源慎用

poweroff  切電源  init 0

shutdown -h 3  3分鍾后關機  

后面加-c可以終止命令

shutdown -r  重啟

shutdown -r now

幫助命令 man mannual 幫助手冊信息
man 命令信息shutdown
命令幫助信息中, 語法中的中括號信息可有可無

補充說明:有些命令是不能通過man手冊獲取幫助信息

[root@oldboysh03-znb ~]# man shutdown
SHUTDOWN(8) shutdown SHUTDOWN(8)

NAME 第一個部分:簡單說明命令的作用
​ shutdown - Halt, power-off or reboot the machine
​ 暫停; 斷電 or 重啟服務器

SYNOPSIS 第二個部分:命令使用規范(命令語法)
​ shutdown [OPTIONS...][TIME] [WALL...]

DESCRIPTION 第三個部分:命令的詳細描述說明
​ shutdown may be used to halt, power-off or reboot the machine.

OPTIONS 第四個部分:命令的參數說明
​ The following options are understood:

--help
Print a short help text and exit.

-H, --halt
Halt the machine.

 

快捷鍵

ctrl + l  清屏

ctrl+ s  鎖屏

ctrl +q  退出鎖屏

CTRL+ a  光標移到最前方

ctrl+e   光標移到最后方

ctrl+u   光標到行首剪切

CTRL+k 光標到行尾剪切

ctrl+  c  中斷命令執行

ctrl +y 粘貼

ctrl+ 方向左右  按照英文單詞移動光標

tab  補全

 

pwd

顯示當前路徑

cd ..上一級

cd ~家目錄

cd / 根目錄

   

ls 查看不隱藏的文件

ls -a 查看所有

按照時間反向排序,顯示最新創建的數據信息
ls -ltr

 

 

創建文件夾

mkdir  路徑

路徑開頭不存在的話  mkdir  -p   路徑

創建文件

touch    路徑或文件

touch {st1,st2}

 

 

4)在空文件中生成據

信息
​ echo 將信息進行輸出

強調:在linux系統中,盡量不要輸入中文符號信息(命令行)
[root@oldboysh03-znb oldboy]# echo "hello world“
> ^C
[root@oldboysh03-znb oldboy]# ”“”“’‘’‘’》《【】¥¥¥¥()

​ [root@oldboysh03-znb oldboy]# echo hello world
​ hello world

​ # 希望將指定的信息輸出到指定文件中
​ [root@oldboysh03-znb oldboy]# echo hello world > /oldboy/oldboy.txt
​ [root@oldboysh03-znb oldboy]# cat /oldboy/oldboy.txt
​ hello world
​ [root@oldboysh03-znb oldboy]# echo oldboyedu.com > /oldboy/oldboy.txt
​ [root@oldboysh03-znb oldboy]# cat /oldboy/oldboy.txt
​ oldboyedu.com
​ [root@oldboysh03-znb oldboy]# echo oldboyedu02.com >> /oldboy/oldboy.txt
​ [root@oldboysh03-znb oldboy]# cat /oldboy/oldboy.txt
​ oldboyedu.com
​ oldboyedu02.com

 

 

3)如何查看文件信息
​ cat 查看文件信息命令
​ [root@oldboysh03-znb oldboy]# cat /etc/hosts
​ 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
​ ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

利用cat命令和整合多個文件信息到一個文件中
​ [root@oldboysh03-znb oldboy]# cat oldgirl.txt
​ hello world
​ [root@oldboysh03-znb oldboy]# cat oldboy.txt oldgirl.txt
​ oldboyedu.com
​ oldboyedu02.com
​ hello world
​ [root@oldboysh03-znb oldboy]# cat oldboy.txt oldgirl.txt >olddog.txt
​ [root@oldboysh03-znb oldboy]# cat olddog.txt
​ oldboyedu.com
​ oldboyedu02.com
​ hello world

 

 

5)對文件或目錄數據信息進行拷貝(復制)
​ copy --- cp
​ 語法格式 cp 參數信息 要進行復制的信息 復制到什么位置

# 將/etc/hosts文件復制到/oldboy目錄中

常見問題:
在復制文件時,不要再文件名稱后面加上/ 一般只有目錄后面有/
[root@oldboysh03-znb oldboy]# cp /etc/hosts /oldboy
[root@oldboysh03-znb oldboy]# ll /oldboy/
total 16
drwxr-xr-x. 3 root root 18 Dec 5 09:33 hedanchun
-rw-r--r--. 1 root root 158 Dec 5 10:53 hosts
-rw-r--r--. 1 root root 30 Dec 5 10:17 oldboy.txt
-rw-r--r--. 1 root root 42 Dec 5 10:41 olddog.txt
drwxr-xr-x. 2 root root 6 Dec 5 09:31 oldgirl
-rw-r--r--. 1 root root 12 Dec 5 10:40 oldgirl.txt
[root@oldboysh03-znb oldboy]# cp /etc/hosts /oldboy01
[root@oldboysh03-znb oldboy]# ll /oldboy01
-rw-r--r--. 1 root root 158 Dec 5 10:53 /oldboy01

正確復制文件方法
[root@oldboysh03-znb oldboy]# cp /etc/hosts /oldboy/
cp: overwrite ‘/oldboy/hosts’? y
說明:文件沒有存在會直接復制, 如果已經存在會提示是否覆蓋

如何正確復制目錄信息
[root@oldboysh03-znb oldboy]# cp /etc/sysconfig/ /oldboy/oldgirl/
cp: omitting directory ‘/etc/sysconfig/’
[root@oldboysh03-znb oldboy]# cp -r /etc/sysconfig/ /oldboy/oldgirl/
[root@oldboysh03-znb oldboy]# ll /oldboy/oldgirl
total 4
drwxr-xr-x. 6 root root 4096 Dec 5 11:03 sysconfig


​ [root@oldboysh03-znb oldboy]# cp -a /etc/ /oldboy/oldgirl/
​ [root@oldboysh03-znb oldboy]# ls /oldboy/oldgirl
​ etc sysconfig

# 對文件或目錄數據信息進行剪切(移動)

move -- mv
mv 參數 要移動數據信息 移動到什么位置
移動/etc/selinux/config 到 /oldboy/shanghai/
[root@oldboysh03-znb oldboy]# ls /oldboy/shanghai
ls: cannot access /oldboy/shanghai: No such file or directory
[root@oldboysh03-znb oldboy]# mkdir /oldboy/shanghai
[root@oldboysh03-znb oldboy]# mv /etc/selinux/config /oldboy/shanghai/
[root@oldboysh03-znb oldboy]# ls /oldboy/shanghai/
config


[root@oldboysh03-znb oldboy]# mv /etc/selinux/config /oldboy/shanghai/
mv: cannot stat ‘/etc/selinux/config’: No such file or directory
[root@oldboysh03-znb oldboy]# mv /oldboy/shanghai/config /etc/selinux/
[root@oldboysh03-znb oldboy]# ls /etc/selinux/
config final semanage.conf targeted tmp

可以對文件信息進行重命名操作
[root@oldboysh03-znb oldboy]# ls
hedanchun hosts oldboy.txt oldboy.txt.bak olddog.txt oldgirl oldgirl.txt shanghai
[root@oldboysh03-znb oldboy]# mv hosts hosts01
[root@oldboysh03-znb oldboy]# ls
hedanchun hosts01 oldboy.txt oldboy.txt.bak olddog.txt oldgirl oldgirl.txt shanghai

7)數據的刪除命令
remove -- rm
rm 參數 要刪除的數據信息

# 刪除oldboy目錄中的hosts01文件
[root@oldboysh03-znb oldboy]# ls
hedanchun hosts01 oldboy.txt oldboy.txt.bak olddog.txt oldgirl oldgirl.txt shanghai
[root@oldboysh03-znb oldboy]# rm hosts01
rm: remove regular file ‘hosts01’? y
[root@oldboysh03-znb oldboy]# ls
hedanchun oldboy.txt oldboy.txt.bak olddog.txt oldgirl oldgirl.txt shanghai

# 刪除目錄操作
[root@oldboysh03-znb oldboy]# ls
hedanchun oldboy.txt oldboy.txt.bak olddog.txt oldgirl oldgirl.txt shanghai
[root@oldboysh03-znb oldboy]# rm shanghai/
rm: cannot remove ‘shanghai/’: Is a directory
[root@oldboysh03-znb oldboy]# rm -r shanghai/
rm: remove directory ‘shanghai/’? y

# 如何強制刪除數據信息
[root@oldboysh03-znb oldboy]# rm -f olddog.txt
[root@oldboysh03-znb oldboy]# ls olddog.txt
ls: cannot access olddog.txt: No such file or directory
[root@oldboysh03-znb oldboy]# rm -fr hedanchun
[root@oldboysh03-znb oldboy]# ls hedanchun -d
ls: cannot access hedanchun: No such file or directory

[root@oldboysh03-znb oldboy]# rm -fr / oldboy/oldboy.txt
rm: it is dangerous to operate recursively on ‘/’
rm: use --no-preserve-root to override this failsafe
[root@oldboysh03-znb oldboy]# rm -fr / --no-preserve-root
說明:默認從centos6.7 開始就有/目錄自我保護機制
# 文本編輯命令說明

vi == nodepad++
vi 你要編輯的文件信息

# 編輯文件的操作步驟
第一個里程:利用vi命令打開文件
vi oldboy.txt

第二個里程:進入到編輯模式,開始編輯文件
按鍵盤上 小寫字母 i == insert

第三個里程:進行編輯

第四個里程:退出編輯模式
按 esc 進行退出

第五個里程:關閉打開的文件
:wq w-write q-quit 保存退出
:q 不保存進行退出

 

 

less+文件名 ##分頁瀏覽,按q退出
head -n 1 文件名 ##顯示文件的前1行
tail -n 1 文件名 ##顯示文件的后1行

sed -n '5,5p' 文件名  顯示文件第5行
wc -l 文件名 ##查看文件行數
wc -w 文件名 ##查看文件字數
wc -c 文件名 ##查看文件字節數

 

 

su - username               ##超戶切換到普通用戶不用密碼,普通用戶切換到超戶用密碼

 

 

mkdir -p +目錄名 ##遞規創建(同時創建文件夾)
rm -f ##強行刪除不提示
rm -r ##刪除目錄,有提示
ls -d directory ##列出目錄本身
ls -R ##遞規顯示目錄中的內容
cp -r directory directory1 ##復制目錄

 

 

bash特性

一、Tab補全

二、查看命令的執行情況

bash通過狀態返回值來輸出次結果

三、命令行歷史

命令歷史一般記錄在.bash_history文件中,默認記錄1000條

四、命令行展開

              ~:當前用戶的家目錄

               ~USERNAME:  給定用戶的家目錄        比如cd ~      cd ~ nick 

              {}:可寫一個以逗號分割的列表,將其展開為多個路徑

               /tmp/{x/{a,b},y,z}  = /tmp/x/a/,/tmp/x,b  ,  /tmp/y/,/tmp/z/

五、快捷鍵

六、別名

在type一個命令的時候有時候出現像這樣的

[root@localhost ~]# type ls
ls is aliased to `ls –color=auto’

ls是 ls–color的別名;

我們可以用alias查看現有的別名信息

我們也可以定義別名

alias   x=‘xx’

給xx命令取別名x(只在當前有效)

以后就可以按x來替代xx

[root@localhost ~]# alias k=’cat -n’
[root@localhost ~]# k /tmp/fstab
1
2 #
3 # /etc/fstab
4 # Created by anaconda on Sat Mar 31 17:44:44 2018
5 #
6 # Accessible filesystems, by reference, are maintained under ‘/dev/disk’
7 # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
8 #
9 UUID=8c871ca3-ae83-463b-b8af-f282002eae08 / xfs defaults 0 0
10 UUID=f3445f8b-4d91-48b1-9586-d3f991e5f8cf /boot xfs defaults 0 0
11 UUID=3f5344d8-cf5a-4596-9acc-2ecd76cb2bec swap swap defaults 0 0
12 /dev/sr0 /media iso9660 defaults 0 0
13

我們也可以取消別名

用unalias +別名就可以

[root@localhost ~]# unalias k

七、通配

         (1)  *  任意數量的字符 :  0+

                         a*b    a-b之間可以任意數量的字符,可以沒有,也可以很多個

       (2)? 任意單個字符   : 1

                        a?b    a-b之間有且一個字符

        (3)[ ]   匹配指定范圍內的任意單個字符 :  指定范圍  1

                  [0-9] :  0-9之間任意單個字符

                  [a-z]:不區分字符大小寫

         (4) [^]  匹配指定范圍之外的任意單個字符 : 指定范圍之外 1
                  [^0-9]   0-9之外的字符

                 [^a-z]    非大寫和小寫字母字符

        專用字符集合:(使用的時候需要外加 '[ ]')就像[[:digit:]]
                      [:digit:]:任意數字,相當於0-9

                      [:lower:]:任意小寫字母

                      [:upper:]: 任意大寫字母

                       [:alpha:]: 任意大小寫字母

                        [:alnum:]:任意數字或字母

                         [:punct:]:標點符號

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM