Linux 的常用命令

Linux 的常用命令

linux的命令操作,這裏簡單的記錄一下常用的。

1、日常操作命令

查看當前所在的工作目錄

pwd

查看當前系統的時間

date

查看有誰在線(哪些人登陸到了服務器)

who 查看當前在線
last 查看最近的登陸歷史記錄

修改開機的等待時間

2、文件系統操作

顯示信息ls

ls / 查看根目錄下的子節點(文件夾和文件)信息
ls -al -a是顯示隱藏文件 -l是以更詳細的列表形式顯示

切換目錄

cd /home

創建文件夾

mkdir aaa 這是相對路徑的寫法
mkdir -p aaa/bbb/ccc
mkdir /data 這是絕對路徑的寫法

刪除文件夾

rmdir 可以刪除空目錄
rm -r aaa 可以把aaa整個文件夾及其中的所有子節點全部刪除
rm -rf aaa 強制刪除aaa

修改文件夾名稱

mv aaa angelababy

創建文件

touch somefile.1 創建一個空文件
echo "i miss you,my baby" > somefile.2 利用重定向“>”的功能,將一條指令的輸出結果寫入到一個文件中,會覆蓋原文件內容
echo "huangxiaoming ,gun dan" >> somefile.2 將一條指令的輸出結果追加到一個文件中,不會覆蓋原文件內容

查看文件多少個單詞,多少行

wc -w README
wc -l README

查看文件

tail -f somefile 根據inode 節點跟蹤
tail -F somefile 根據 文件名 跟蹤

解壓和壓縮

1.gzip壓縮
gzip a.txt

2.解壓
gunzip a.txt.gz
gzip -d a.txt.gz

3.bzip2壓縮
bzip2 a

4.解壓
bunzip2 a.bz2
bzip2 -d a.bz2

5.將當前目錄的文件打包
tar -cvf bak.tar .
將/etc/password追加文件到bak.tar中(r)
tar -rvf bak.tar /etc/password

6.解壓
tar -xvf bak.tar

7.打包並壓縮gzip
tar -zcvf a.tar.gz

8.解壓縮

解壓到/usr/下
tar -zxvf a.tar.gz -C /usr

9.查看壓縮包內容
tar -ztvf a.tar.gz

zip/unzip

10.打包並壓縮成bz2
tar -jcvf a.tar.bz2

11.解壓bz2
tar -jxvf a.tar.bz2

用vi文本編輯器來編輯生成文件

******最基本用法
vi somefile.4
1、首先會進入“一般模式”,此模式只接受各種快捷鍵,不能編輯文件內容
2、按i鍵,就會從一般模式進入編輯模式,此模式下,敲入的都是文件內容
3、編輯完成之後,按Esc鍵退出編輯模式,回到一般模式;
4、再按:,進入“底行命令模式”,輸入wq命令,回車即可

******一些常用快捷鍵
一些有用的快捷鍵(在一般模式下使用):
a 在光標後一位開始插入
A 在該行的最後插入
I 在該行的最前面插入
gg 直接跳到文件的首行
G 直接跳到文件的末行
dd 刪除行,如果 5dd ,則一次性刪除光標後的5行
yy 複製當前行, 複製多行,則 3yy,則複製當前行附近的3行
p 粘貼
v 進入字符選擇模式,選擇完成後,按y複製,按p粘貼
ctrl+v 進入塊選擇模式,選擇完成後,按y複製,按p粘貼
shift+v 進入行選擇模式,選擇完成後,按y複製,按p粘貼

查找並替換(在底行命令模式中輸入)
%s/sad/88888888888888 效果:查找文件中所有sad,替換爲88888888888888
/you 效果:查找文件中出現的you,並定位到第一個找到的地方,按n可以定位到下一個匹配位置(按N定位到上一個)

3、文件權限的操作

****linux文件權限的描述格式解讀
drwxr-xr-x (也可以用二進制表示 111 101 101 --> 755)

d:標識節點類型(d:文件夾 -:文件 l:鏈接)
r:可讀 w:可寫 x:可執行
第一組rwx: 表示這個文件的擁有者對它的權限:可讀可寫可執行
第二組r-x: 表示這個文件的所屬組對它的權限:可讀,不可寫,可執行
第三組r-x: 表示這個文件的其他用戶(相對於上面兩類用戶)對它的權限:可讀,不可寫,可執行

****修改文件權限
chmod g-rw haha.dat 表示將haha.dat對所屬組的rw權限取消
chmod o-rw haha.dat 表示將haha.dat對其他人的rw權限取消
chmod u+x haha.dat 表示將haha.dat對所屬用戶的權限增加x

也可以用數字的方式來修改權限
chmod 664 haha.dat
就會修改成 rw-rw-r--

如果要將一個文件夾的所有內容權限統一修改,則可以-R參數
chmod -R 770 aaa/
chown angela:angela aaa/ <只有root能執行>

目錄沒有執行權限的時候普通用戶不能進入
文件只有讀寫權限的時候普通用戶是可以刪除的(刪除文件不是修改它,是操作父及目錄),只要父級目錄有執行和修改的權限

4、基本的用戶管理

*****添加用戶
useradd angela
要修改密碼才能登陸
passwd angela 按提示輸入密碼即可

**爲用戶配置sudo權限
用root編輯 vi /etc/sudoers
在文件的如下位置,爲hadoop添加一行即可
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL

然後,hadoop用戶就可以用sudo來執行系統級別的指令
[hadoop@shizhan ~]&dollar; sudo useradd huangxiaoming

添加一個tom用戶,設置它屬於users組,並添加註釋信息
分步完成:useradd tom

      usermod -g users tom
      usermod -c "hr tom" tom

一步完成:useradd -g users -c "hr tom" tom

設置tom用戶的密碼
passwd tom

修改tom用戶的登陸名爲tomcat
usermod -l tomcat tom

將tomcat添加到sys和root組中
usermod -G sys,root tomcat

查看tomcat的組信息
groups tomcat

添加一個jerry用戶並設置密碼
useradd jerry
passwd jerry

添加一個交america的組
groupadd america

將jerry添加到america組中
usermod -g america jerry

將tomcat用戶從root組和sys組刪除
gpasswd -d tomcat root
gpasswd -d tomcat sys

將america組名修改爲am
groupmod -n am america

5、系統管理操作

主機名操作

hostname
****修改主機名(重啓後無效)
hostname hadoop

*****修改主機名(重啓後永久生效)
vi /ect/sysconfig/network

chkconfig設置後臺服務的自啓動配置

chkconfig 查看所有服務的自啓動配置
chkconfig iptables off 關掉指定服務的自啓動
checonfig iptables on 開啓指定服務的自啓動

系統啓動級別管理

vi /etc/inittab
centos7 之後 inittab is no longer used when using systemd 不再使用了。

IP地址文件的詳解

****修改IP(重啓後無效)
ifconfig eth0 192.168.12.22

****修改IP(重啓後永久生效)
vi /etc/sysconfig/network-scripts/ifcfg-ens32
裏面內容的解釋:

TYPE="Ethernet"     # 這個是類型不用管
PROXY_METHOD="none"  # 這個是代理方式,不用管
BROWSER_ONLY="no" # 僅瀏覽器模式,不用管
BOOTPROTO="dhcp" # 網卡獲得ip地址的方式, dhcp 代表自動獲取,static(靜態 ip地址)bootip(通過bootp協議獲得的ip地址)
DEFROUTE="yes" # 默認路由
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"  # 網卡名稱
UUID="026a2b15-42ea-472f-86d6-9913d19aff3e" ##UUID不用管
DEVICE="ens32" # 網卡名稱
ONBOOT="yes"  # 開機啓動

如果把BOOTPROTO 修改成 static,一般情況下只需要配置如下就行:

BOOTPROTO=static   #改爲static 靜態ip
IPADDR=192.168.126.166  # 這裏需要指定 ip
GATEWAY=192.168.126.2   # 指定網關
NETMASK=255.255.255.0   # 指定子網掩碼
ONBOOT=yes   # 開機啓動
DNS1=192.168.126.2 # DNS 指定網關就行 可以不配置
DNS2=8.8.8.8

mount 掛載外部存儲設備到文件系統中

mkdir /mnt/cdrom 創建一個目錄,用來掛載
mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 將設備/dev/cdrom掛載到 掛載點 : /mnt/cdrom中

*****umount
umount /mnt/cdrom

統計文件或文件夾的大小

du -sh /mnt/cdrom/Packages
df -h 查看磁盤的空間

開關機

****關機
halt
****重啓
reboot

配置主機之間的免密ssh登陸

假如 A 要登陸 B
在A上操作:
%%首先生成密鑰對
ssh-keygen (提示時,直接回車即可)
%%再將A自己的公鑰拷貝並追加到B的授權列表文件authorized_keys中
ssh-copy-id B
原理如下圖所示:

圖片.png | left | 828x467

上傳文件

上傳文件到linux上, 是上傳到當前所在的目錄下
yum list|grep lrzsz
sudo yum -y install lrzsz.x86_64
命令:(參數 -y 如果linux上有相同的文件, 會覆蓋)

rz
rz -y


6、正則表達式

1.cut截取以:分割保留第七段
grep hadoop /etc/passwd | cut -d: -f7

2.排序
du | sort -n

3.查詢不包含hadoop的
grep -v hadoop /etc/passwd

4.正則表達包含hadoop
grep 'hadoop' /etc/passwd

5.正則表達(點代表任意一個字符)
grep 'h.*p' /etc/passwd

6.正則表達以hadoop開頭
grep '^hadoop' /etc/passwd

7.正則表達以hadoop結尾
grep 'hadoop&dollar;' /etc/passwd

規則:
. : 任意一個字符
a* : 任意多個a(零個或多個a)
a? : 零個或一個a
a+ : 一個或多個a
.* : 任意多個任意字符
. : 轉義.
<h.*p> :以h開頭,p結尾的一個單詞
o{2} : o重複兩次

grep '^i.{18}n&dollar;' /usr/share/dict/words

查找不是以#開頭的行
grep -v '^#' a.txt | grep -v '^&dollar;'

以h或r開頭的
grep '^[hr]' /etc/passwd

不是以h和r開頭的
grep '^1' /etc/passwd

不是以h到r開頭的
grep '^2' /etc/passwd

7、輸入輸出重定向

1.新建一個文件
touch a.txt
> b.txt

2.錯誤重定向:2>
find /etc -name zhaoxing.txt 2> error.txt

3.將正確或錯誤的信息都輸入到log.txt中
find /etc -name passwd > /tmp/log.txt 2>&1 
find /etc -name passwd &> /tmp/log.txt

4.追加>>

5.將小寫轉爲大寫(輸入重定向)
tr "a-z" "A-Z" < /etc/passwd

6.自動創建文件
cat > log.txt << EXIT
> ccc
> ddd
> EXI

7.查看/etc下的文件有多少個?
ls -l /etc/ | grep '^d' | wc -l

8.查看/etc下的文件有多少個,並將文件詳情輸入到result.txt中
ls -l /etc/ | grep '^d' | tee result.txt | wc -l

8、進程管理

1.查看用戶最近登錄情況
last
lastlog

2.查看硬盤使用情況
df

3.查看文件大小
du

4.查看內存使用情況
free

5.查看文件系統
/proc

6.查看日誌
ls /var/log/

7.查看系統報錯日誌
tail /var/log/messages

8.查看進程
top

9.結束進程
kill 1234
kill -9 4333

VMware 機器克隆IP不可用問題

直接修改 /etc/sysconfig/network-script/ifcfg-eth0
刪掉UUID HWADDR
配置靜態地址
然後:
rm -rf  /etc/udev/rules.d/70-persistent-net.rules
然後 reboot


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