㈠ linux常用的20個命令
Linux中最常用的20個命令如下:
1. ls - 列出目錄內容
2. cd - 改變目錄
3. pwd - 顯示當前目錄
4. mkdir - 創建目錄
5. rm - 刪除文件或目錄
6. rmdir - 刪除空目錄
7. touch - 創建空文件
8. cat - 顯示或連接文件
9. cp - 復制文件或目錄
10. mv - 移動或重命名文件或目錄
11. less - 分頁顯示文件內容
12. head/tail - 顯示文件頭部/尾部內容
13. echo - 顯示字元串
14. ps - 顯示進程狀態
15. top - 實時顯示進程狀態
16. kill - 終止進程
17. df - 顯示磁碟空間使用情況
18. - 顯示目錄和文件大小
19. ping - 測試網譽培絡連接
20. ifconfig/ip - 配置或顯示網路介面信息
這20個命令可以完成大多數Linux文件操作、進程管理和網路配置任務。熟練掌握它們是成為Linux高手的基礎。
如果要進一步了解每個命令的功能和參數,可以通過以下方式學習:
1. 在終端直接輸入命令名並按派虛褲回車,會顯示命令語法和簡要說明。
2. 在終端輸入man 命令名,會顯示對應命令的手冊頁,裡麵包含詳細說明、參數和示例。
3. 搜索網路教程和手冊,如菜鳥教程、Linux命令大全等,這些網站上有每個命令的詳盡教程。
4. 實踐並多使用這些命令,熟練掌握語法塵簡和常用功能的參數。實踐出真知。
如果您對Linux命令或其它知識有任何疑問,歡迎與我聯系。我會提供詳細的解答、參考資料和練習方案,幫助您系統和深入地學習。覺得這份Linux常用命令liste對您有用的話,也請不吝賜教,我會持續完善和優化。
㈡ linux 修改usr 中文件
我安裝過1.7版的java,也是這種bin的文件,安裝的過程中,會自動解壓出一個rpm文件,他好像是放在了當前目錄下,但是真正的java是默認放在了/usr/java下,而實際上安裝結束以後,那個rpm是無用的,可以刪除。
bin好像不能指定路徑,但是linux的好處就是你可以手動移動然後修改環境變數。
對於java而言,本身就是需要修改環境變數的,所以真的想放在別的位置的話,可以利用mv命令對其進行移動。
如果不清楚安裝在哪裡了,可以使用locate命令進行確認,當然也可以用find命令,但是那個參數比較多,速度慢,在updatedb之後,locate還是有一個優勢的,就是在不確定搜索路徑的情況下,可以快一些。
其實,我一般是不移動java的安裝路徑的,我那一版會在/usr/java下放置三個目錄,其中最有用的是jdk1.7.0,所以我直接在/usr/local下執行命令ln -s /usr/java/jdk1.7.0 java,建立了鏈接,這樣其實也可以的。
㈢ linux的find的命令(菜鳥請教一下各位前輩)
find命令的參數及使用命令:
pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的文件輸出到標准輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式為'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。
#-print 將查找到的文件輸出到標准輸出
#-exec command {} \; —–將查到的文件執行command操作,{} 和 \;之間有空格
#-ok 和-exec相同,只不過在操作前要詢用戶
例:find . -name .svn | xargs rm -rf
====================================================
-name filename #查找名為filename的文件
-perm #按執行許可權來查找
-user username #按文件屬主來查找
-group groupname #按組來查找
-mtime -n +n #按文件更改時間來查找文件,-n指n天以內,+n指n天以前
-atime -n +n #按文件訪問時間來查GIN: 0px">
-ctime -n +n #按文件創建時間來查找文件,-n指n天以內,+n指n天以前
-nogroup #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以內,+n指n天以前
-ctime -n +n #按文件創建時間來查找文件,-n指n天以內,+n指n天以前
-nogroup #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer f1 !f2 #查更改時間比f1新但比f2舊的文件
-type b/d/c/p/l/f #查是塊設備、目錄、字元設備、管道、符號鏈接、普通文件
-size n[c] #查長度為n塊[或n位元組]的文件
-depth #使查找在進入子目錄前先行查找完本目錄
-fstype #查更改時間比f1新但比f2舊的文件
-type b/d/c/p/l/f #查是塊設備、目錄、字元設備、管道、符號鏈接、普通文件
-size n[c] #查長度為n塊[或n位元組]的文件
㈣ linux基礎命令
Linux常用命令大全
系統信息
arch 顯示機器的處理器架構(1)
uname -m 顯示機器的處理器架構(2)
uname -r 顯示正在使用的內核版本
dmidecode -q 顯示硬體系統部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 羅列一個磁碟的架構特性
hdparm -tT /dev/sda 在磁碟上執行測試性讀取操作
cat /proc/cpuinfo 顯示CPU info的信息
cat /proc/interrupts 顯示中斷
cat /proc/meminfo 校驗內存使用
cat /proc/swaps 顯示哪些swap被使用
cat /proc/version 顯示內核的版本
cat /proc/net/dev 顯示網路適配器及統計
cat /proc/mounts 顯示已載入的文件系統
lspci -tv 羅列 PCI 設備
lsusb -tv 顯示 USB 設備
date 顯示系統日期
cal 2007 顯示2007年的日歷表
date 041217002007.00 設置日期和時間 - 月日時分年.秒
clock -w 將時間修改保存到 BIOS
關機 (系統的關機、重啟以及登出 )
shutdown -h now 關閉系統(1)
init 0 關閉系統(2)
telinit 0 關閉系統(3)
shutdown -h hours:minutes & 按預定時間關閉系統
shutdown -c 取消按預定時間關閉系統
shutdown -r now 重啟(1)
reboot 重啟(2)
logout 注銷
文件和目錄
cd /home 進入 '/ home' 目錄'
cd .. 返回上一級目錄
cd ../.. 返回上兩級目錄
cd 進入個人的主目錄
cd ~user1 進入個人的主目錄
cd - 返回上次所在的目錄
pwd 顯示工作路徑
ls 查看目錄中的文件
ls -F 查看目錄中的文件
ls -l 顯示文件和目錄的詳細資料
ls -a 顯示隱藏文件
ls *[0-9]* 顯示包含數字的文件名和目錄名
tree 顯示文件和目錄由根目錄開始的樹形結構(1)
lstree 顯示文件和目錄由根目錄開始的樹形結構(2)
mkdir dir1 創建一個叫做 'dir1' 的目錄'
mkdir dir1 dir2 同時創建兩個目錄
mkdir -p /tmp/dir1/dir2 創建一個目錄樹
rm -f file1 刪除一個叫做 'file1' 的文件'
rmdir dir1 刪除一個叫做 'dir1' 的目錄'
rm -rf dir1 刪除一個叫做 'dir1' 的目錄並同時刪除其內容
rm -rf dir1 dir2 同時刪除兩個目錄及它們的內容
mv dir1 new_dir 重命名/移動 一個目錄
cp file1 file2 復制一個文件
cp dir/* . 復制一個目錄下的所有文件到當前工作目錄
cp -a /tmp/dir1 . 復制一個目錄到當前工作目錄
cp -a dir1 dir2 復制一個目錄
ln -s file1 lnk1 創建一個指向文件或目錄的軟鏈接
ln file1 lnk1 創建一個指向文件或目錄的物理鏈接
touch -t 0712250000 file1 修改一個文件或目錄的時間戳 - (YYMMDDhhmm)
file file1 outputs the mime type of the file as text
iconv -l 列出已知的編碼
iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.
find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)
文件搜索
find / -name file1 從 '/' 開始進入根文件系統搜索文件和目錄
find / -user user1 搜索屬於用戶 'user1' 的文件和目錄
find /home/user1 -name \*.bin 在目錄 '/ home/user1' 中搜索帶有'.bin' 結尾的文件
find /usr/bin -type f -atime +100 搜索在過去100天內未被使用過的執行文件
find /usr/bin -type f -mtime -10 搜索在10天內被創建或者修改過的文件
find / -name \*.rpm -exec chmod 755 '{}' \; 搜索以 '.rpm' 結尾的文件並定義其許可權
find / -xdev -name \*.rpm 搜索以 '.rpm' 結尾的文件,忽略光碟機、捷盤等可移動設備
locate \*.ps 尋找以 '.ps' 結尾的文件 - 先運行 'updatedb' 命令
whereis halt 顯示一個二進制文件、源碼或man的位置
which halt 顯示一個二進制文件或可執行文件的完整路徑
掛載一個文件系統
mount /dev/hda2 /mnt/hda2 掛載一個叫做hda2的盤 - 確定目錄 '/ mnt/hda2' 已經存在
umount /dev/hda2 卸載一個叫做hda2的盤 - 先從掛載點 '/ mnt/hda2' 退出
fuser -km /mnt/hda2 當設備繁忙時強制卸載
umount -n /mnt/hda2 運行卸載操作而不寫入 /etc/mtab 文件- 當文件為只讀或當磁碟寫滿時非常有用
mount /dev/fd0 /mnt/floppy 掛載一個軟盤
mount /dev/cdrom /mnt/cdrom 掛載一個cdrom或dvdrom
mount /dev/hdc /mnt/cdrecorder 掛載一個cdrw或dvdrom
mount /dev/hdb /mnt/cdrecorder 掛載一個cdrw或dvdrom
mount -o loop file.iso /mnt/cdrom 掛載一個文件或ISO鏡像文件
mount -t vfat /dev/hda5 /mnt/hda5 掛載一個Windows FAT32文件系統
mount /dev/sda1 /mnt/usbdisk 掛載一個usb 捷盤或快閃記憶體設備
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 掛載一個windows網路共享
磁碟空間
df -h 顯示已經掛載的分區列表
ls -lSr |more 以尺寸大小排列文件和目錄
-sh dir1 估算目錄 'dir1' 已經使用的磁碟空間'
-sk * | sort -rn 以容量大小為依據依次顯示文件和目錄的大小
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小為依據依次顯示已安裝的rpm包所使用的空間 (fedora, redhat類系統)
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小為依據顯示已安裝的deb包所使用的空間 (ubuntu, debian類系統)
返回頂部索引 ^
用戶和群組
groupadd group_name 創建一個新用戶組
groupdel group_name 刪除一個用戶組
groupmod -n new_group_name old_group_name 重命名一個用戶組
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 創建一個屬於 "admin" 用戶組的用戶
useradd user1 創建一個新用戶
userdel -r user1 刪除一個用戶 ( '-r' 排除主目錄)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用戶屬性
passwd 修改口令
passwd user1 修改一個用戶的口令 (只允許root執行)
chage -E 2005-12-31 user1 設置用戶口令的失效期限
pwck 檢查 '/etc/passwd' 的文件格式和語法修正以及存在的用戶
grpck 檢查 '/etc/passwd' 的文件格式和語法修正以及存在的群組
newgrp group_name 登陸進一個新的群組以改變新創建文件的預設群組
返回頂部索引 ^
文件的許可權 - 使用 "+" 設置許可權,使用 "-" 用於取消
ls -lh 顯示許可權
ls /tmp | pr -T5 -W$COLUMNS 將終端劃分成5欄顯示
chmod ugo+rwx directory1 設置目錄的所有人(u)、群組(g)以及其他人(o)以讀(r )、寫(w)和執行(x)的許可權
chmod go-rwx directory1 刪除群組(g)與其他人(o)對目錄的讀寫執行許可權
chown user1 file1 改變一個文件的所有人屬性
chown -R user1 directory1 改變一個目錄的所有人屬性並同時改變改目錄下所有文件的屬性
chgrp group1 file1 改變文件的群組
chown user1:group1 file1 改變一個文件的所有人和群組屬性
find / -perm -u+s 羅列一個系統中所有使用了SUID控制的文件
chmod u+s /bin/file1 設置一個二進制文件的 SUID 位 - 運行該文件的用戶也被賦予和所有者同樣的許可權
chmod u-s /bin/file1 禁用一個二進制文件的 SUID位
chmod g+s /home/public 設置一個目錄的SGID 位 - 類似SUID ,不過這是針對目錄的
chmod g-s /home/public 禁用一個目錄的 SGID 位
chmod o+t /home/public 設置一個文件的 STIKY 位 - 只允許合法所有人刪除文件
chmod o-t /home/public 禁用一個目錄的 STIKY 位
返回頂部索引 ^
文件的特殊屬性 - 使用 "+" 設置許可權,使用 "-" 用於取消
chattr +a file1 只允許以追加方式讀寫文件
chattr +c file1 允許這個文件能被內核自動壓縮/解壓
chattr +d file1 在進行文件系統備份時,mp程序將忽略這個文件
chattr +i file1 設置成不可變的文件,不能被刪除、修改、重命名或者鏈接
chattr +s file1 允許一個文件被安全地刪除
chattr +S file1 一旦應用程序對這個文件執行了寫操作,使系統立刻把修改的結果寫到磁碟
chattr +u file1 若文件被刪除,系統會允許你在以後恢復這個被刪除的文件
lsattr 顯示特殊的屬性
返回頂部索引 ^
打包和壓縮文件
bunzip2 file1.bz2 解壓一個叫做 'file1.bz2'的文件
bzip2 file1 壓縮一個叫做 'file1' 的文件
gunzip file1.gz 解壓一個叫做 'file1.gz'的文件
gzip file1 壓縮一個叫做 'file1'的文件
gzip -9 file1 最大程度壓縮
rar a file1.rar test_file 創建一個叫做 'file1.rar' 的包
rar a file1.rar file1 file2 dir1 同時壓縮 'file1', 'file2' 以及目錄 'dir1'
rar x file1.rar 解壓rar包
unrar x file1.rar 解壓rar包
tar -cvf archive.tar file1 創建一個非壓縮的 tarball
tar -cvf archive.tar file1 file2 dir1 創建一個包含了 'file1', 'file2' 以及 'dir1'的檔案文件
tar -tf archive.tar 顯示一個包中的內容
tar -xvf archive.tar 釋放一個包
tar -xvf archive.tar -C /tmp 將壓縮包釋放到 /tmp目錄下
tar -cvfj archive.tar.bz2 dir1 創建一個bzip2格式的壓縮包
tar -xvfj archive.tar.bz2 解壓一個bzip2格式的壓縮包
tar -cvfz archive.tar.gz dir1 創建一個gzip格式的壓縮包
tar -xvfz archive.tar.gz 解壓一個gzip格式的壓縮包
zip file1.zip file1 創建一個zip格式的壓縮包
zip -r file1.zip file1 file2 dir1 將幾個文件和目錄同時壓縮成一個zip格式的壓縮包
unzip file1.zip 解壓一個zip格式壓縮包
返回頂部索引 ^
RPM 包 - (Fedora, Redhat及類似系統)
rpm -ivh package.rpm 安裝一個rpm包
rpm -ivh --nodeeps package.rpm 安裝一個rpm包而忽略依賴關系警告
rpm -U package.rpm 更新一個rpm包但不改變其配置文件
rpm -F package.rpm 更新一個確定已經安裝的rpm包
rpm -e package_name.rpm 刪除一個rpm包
rpm -qa 顯示系統中所有已經安裝的rpm包
rpm -qa | grep httpd 顯示所有名稱中包含 "httpd" 字樣的rpm包
rpm -qi package_name 獲取一個已安裝包的特殊信息
rpm -qg "System Environment/Daemons" 顯示一個組件的rpm包
rpm -ql package_name 顯示一個已經安裝的rpm包提供的文件列表
rpm -qc package_name 顯示一個已經安裝的rpm包提供的配置文件列表
rpm -q package_name --whatrequires 顯示與一個rpm包存在依賴關系的列表
rpm -q package_name --whatprovides 顯示一個rpm包所佔的體積
rpm -q package_name --scripts 顯示在安裝/刪除期間所執行的腳本l
rpm -q package_name --changelog 顯示一個rpm包的修改歷史
rpm -qf /etc/httpd/conf/httpd.conf 確認所給的文件由哪個rpm包所提供
rpm -qp package.rpm -l 顯示由一個尚未安裝的rpm包提供的文件列表
rpm --import /media/cdrom/RPM-GPG-KEY 導入公鑰數字證書
rpm --checksig package.rpm 確認一個rpm包的完整性
rpm -qa gpg-pubkey 確認已安裝的所有rpm包的完整性
rpm -V package_name 檢查文件尺寸、 許可、類型、所有者、群組、MD5檢查以及最後修改時間
rpm -Va 檢查系統中所有已安裝的rpm包- 小心使用
rpm -Vp package.rpm 確認一個rpm包還未安裝
rpm2cpio package.rpm | cpio --extract --make-directories *bin* 從一個rpm包運行可執行文件
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 從一個rpm源碼安裝一個構建好的包
rpmbuild --rebuild package_name.src.rpm 從一個rpm源碼構建一個 rpm 包
返回頂部索引 ^
YUM 軟體包升級器 - (Fedora, RedHat及類似系統)
yum install package_name 下載並安裝一個rpm包
yum localinstall package_name.rpm 將安裝一個rpm包,使用你自己的軟體倉庫為你解決所有依賴關系
yum update package_name.rpm 更新當前系統中所有安裝的rpm包
yum update package_name 更新一個rpm包
yum remove package_name 刪除一個rpm包
yum list 列出當前系統中安裝的所有包
yum search package_name 在rpm倉庫中搜尋軟體包
yum clean packages 清理rpm緩存刪除下載的包
yum clean headers 刪除所有頭文件
yum clean all 刪除所有緩存的包和頭文件
返回頂部索引 ^
DEB 包 (Debian, Ubuntu 以及類似系統)
dpkg -i package.deb 安裝/更新一個 deb 包
dpkg -r package_name 從系統刪除一個 deb 包
dpkg -l 顯示系統中所有已經安裝的 deb 包
dpkg -l | grep httpd 顯示所有名稱中包含 "httpd" 字樣的deb包
dpkg -s package_name 獲得已經安裝在系統中一個特殊包的信息
dpkg -L package_name 顯示系統中已經安裝的一個deb包所提供的文件列表
dpkg --contents package.deb 顯示尚未安裝的一個包所提供的文件列表
dpkg -S /bin/ping 確認所給的文件由哪個deb包提供
返回頂部索引 ^
APT 軟體工具 (Debian, Ubuntu 以及類似系統)
apt-get install package_name 安裝/更新一個 deb 包
apt-cdrom install package_name 從光碟安裝/更新一個 deb 包
apt-get update 升級列表中的軟體包
apt-get upgrade 升級所有已安裝的軟體
apt-get remove package_name 從系統刪除一個deb包
apt-get check 確認依賴的軟體倉庫正確
apt-get clean 從下載的軟體包中清理緩存
apt-cache search searched-package 返回包含所要搜索字元串的軟體包名稱
返回頂部索引 ^
查看文件內容
cat file1 從第一個位元組開始正向查看文件的內容
tac file1 從最後一行開始反向查看一個文件的內容
more file1 查看一個長文件的內容
less file1 類似於 'more' 命令,但是它允許在文件中和正向操作一樣的反向操作
head -2 file1 查看一個文件的前兩行
tail -2 file1 查看一個文件的最後兩行
tail -f /var/log/messages 實時查看被添加到一個文件中的內容
返回頂部索引 ^
文本處理
cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT
cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 合並一個文件的詳細說明文本,並將簡介寫入一個新文件中
cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 合並一個文件的詳細說明文本,並將簡介寫入一個已有的文件中
grep Aug /var/log/messages 在文件 '/var/log/messages'中查找關鍵詞"Aug"
grep ^Aug /var/log/messages 在文件 '/var/log/messages'中查找以"Aug"開始的詞彙
grep [0-9] /var/log/messages 選擇 '/var/log/messages' 文件中所有包含數字的行
grep Aug -R /var/log/* 在目錄 '/var/log' 及隨後的目錄中搜索字元串"Aug"
sed 's/stringa1/stringa2/g' example.txt 將example.txt文件中的 "string1" 替換成 "string2"
sed '/^$/d' example.txt 從example.txt文件中刪除所有空白行
sed '/ *#/d; /^$/d' example.txt 從example.txt文件中刪除所有注釋和空白行
echo 'esempio' | tr '[:lower:]' '[:upper:]' 合並上下單元格內容
sed -e '1d' result.txt 從文件example.txt 中排除第一行
sed -n '/stringa1/p' 查看只包含詞彙 "string1"的行
sed -e 's/ *$//' example.txt 刪除每一行最後的空白字元
sed -e 's/stringa1//g' example.txt 從文檔中只刪除詞彙 "string1" 並保留剩餘全部
sed -n '1,5p;5q' example.txt 查看從第一行到第5行內容
sed -n '5p;5q' example.txt 查看第5行
sed -e 's/00*/0/g' example.txt 用單個零替換多個零
cat -n file1 標示文件的行數
cat example.txt | awk 'NR%2==1' 刪除example.txt文件中的所有偶數行
echo a b c | awk '{print $1}' 查看一行第一欄
echo a b c | awk '{print $1,$3}' 查看一行的第一和第三欄
paste file1 file2 合並兩個文件或兩欄的內容
paste -d '+' file1 file2 合並兩個文件或兩欄的內容,中間用"+"區分
sort file1 file2 排序兩個文件的內容
sort file1 file2 | uniq 取出兩個文件的並集(重復的行只保留一份)
sort file1 file2 | uniq -u 刪除交集,留下其他的行
sort file1 file2 | uniq -d 取出兩個文件的交集(只留下同時存在於兩個文件中的文件)
comm -1 file1 file2 比較兩個文件的內容只刪除 'file1' 所包含的內容
comm -2 file1 file2 比較兩個文件的內容只刪除 'file2' 所包含的內容
comm -3 file1 file2 比較兩個文件的內容只刪除兩個文件共有的部分
返回頂部索引 ^
字元設置和文件格式轉換
dos2unix filedos.txt fileunix.txt 將一個文本文件的格式從MSDOS轉換成UNIX
unix2dos fileunix.txt filedos.txt 將一個文本文件的格式從UNIX轉換成MSDOS
recode ..HTML < page.txt > page.html 將一個文本文件轉換成html
recode -l | more 顯示所有允許的轉換格式
返回頂部索引 ^
文件系統分析
badblocks -v /dev/hda1 檢查磁碟hda1上的壞磁塊
fsck /dev/hda1 修復/檢查hda1磁碟上linux文件系統的完整性
fsck.ext2 /dev/hda1 修復/檢查hda1磁碟上ext2文件系統的完整性
e2fsck /dev/hda1 修復/檢查hda1磁碟上ext2文件系統的完整性
e2fsck -j /dev/hda1 修復/檢查hda1磁碟上ext3文件系統的完整性
fsck.ext3 /dev/hda1 修復/檢查hda1磁碟上ext3文件系統的完整性
fsck.vfat /dev/hda1 修復/檢查hda1磁碟上fat文件系統的完整性
fsck.msdos /dev/hda1 修復/檢查hda1磁碟上dos文件系統的完整性
dosfsck /dev/hda1 修復/檢查hda1磁碟上dos文件系統的完整性
返回頂部索引 ^
初始化一個文件系統
mkfs /dev/hda1 在hda1分區創建一個文件系統
mke2fs /dev/hda1 在hda1分區創建一個linux ext2的文件系統
mke2fs -j /dev/hda1 在hda1分區創建一個linux ext3(日誌型)的文件系統
mkfs -t vfat 32 -F /dev/hda1 創建一個 FAT32 文件系統
fdformat -n /dev/fd0 格式化一個軟盤
mkswap /dev/hda3 創建一個swap文件系統
返回頂部索引 ^
SWAP文件系統
mkswap /dev/hda3 創建一個swap文件系統
swapon /dev/hda3 啟用一個新的swap文件系統
swapon /dev/hda2 /dev/hdb3 啟用兩個swap分區
返回頂部索引 ^
備份
mp -0aj -f /tmp/home0.bak /home 製作一個 '/home' 目錄的完整備份
mp -1aj -f /tmp/home0.bak /home 製作一個 '/home' 目錄的互動式備份
restore -if /tmp/home0.bak 還原一個互動式備份
rsync -rogpav --delete /home /tmp 同步兩邊的目錄
rsync -rogpav -e ssh --delete /home ip_address:/tmp 通過SSH通道rsync
rsync -az -e ssh --delete ip_addr:/home/public /home/local 通過ssh和壓縮將一個遠程目錄同步到本地目錄
rsync -az -e ssh --delete /home/local ip_addr:/home/public 通過ssh和壓縮將本地目錄同步到遠程目錄
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' 通過ssh在遠程主機上執行一次備份本地磁碟的操作
dd if=/dev/sda of=/tmp/file1 備份磁碟內容到一個文件
tar -Puf backup.tar /home/user 執行一次對 '/home/user' 目錄的互動式備份操作
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' 通過ssh在遠程目錄中復制一個目錄內容
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' 通過ssh在遠程目錄中復制一個本地目錄
tar cf - . | (cd /tmp/backup ; tar xf - ) 本地將一個目錄復制到另一個地方,保留原有許可權及鏈接
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 從一個目錄查找並復制所有以 '.txt' 結尾的文件到另一個目錄
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 結尾的文件並做成一個bzip包
dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一個將 MBR (Master Boot Record)內容復制到軟盤的動作
dd if=/dev/fd0 of=/dev/hda bs=512 count=1 從已經保存到軟盤的備份中恢復MBR內容
返回頂部索引 ^
光碟
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一個可復寫的光碟內容
mkisofs /dev/cdrom > cd.iso 在磁碟上創建一個光碟的iso鏡像文件
mkisofs /dev/cdrom | gzip > cd_iso.gz 在磁碟上創建一個壓縮了的光碟iso鏡像文件
mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd 創建一個目錄的iso鏡像文件
cdrecord -v dev=/dev/cdrom cd.iso 刻錄一個ISO鏡像文件
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - 刻錄一個壓縮了的ISO鏡像文件
mount -o loop cd.iso /mnt/iso 掛載一個ISO鏡像文件
cd-paranoia -B 從一個CD光碟轉錄音軌到 wav 文件中
cd-paranoia -- "-3" 從一個CD光碟轉錄音軌到 wav 文件中(參數-3)
cdrecord --scanbus 掃描匯流排以識別scsi通道
dd if=/dev/hdc | md5sum 校驗一個設備的md5sum編碼,例如一張 CD
返回頂部索引 ^
網路 - (乙太網和WIFI無線)
ifconfig eth0 顯示一個乙太網卡的配置
ifup eth0 啟用一個 'eth0' 網路設備
ifdown eth0 禁用一個 'eth0' 網路設備
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP地址
ifconfig eth0 promisc 設置 'eth0' 成混雜模式以嗅探數據包 (sniffing)
dhclient eth0 以dhcp模式啟用 'eth0'
route -n show routing table
route add -net 0/0 gw IP_Gateway configura default gateway
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure static route to reach network '192.168.0.0/16'
route del 0/0 gw IP_gateway remove static route
echo "1" > /proc/sys/net/ipv4/ip_forward activate ip routing
hostname show hostname of system
host www.example.com lookup hostname to resolve name to ip address and viceversa(1)
nslookup www.example.com lookup hostname to resolve name to ip address and viceversa(2)
ip link show show link status of all interfaces
mii-tool eth0 show link status of 'eth0'
ethtool eth0 show statistics of network card 'eth0'
netstat -tup show all active network connections and their PID
netstat -tupl show all network services listening on the system and their PID
tcpmp tcp port 80 show all HTTP traffic
iwlist scan show wireless networks
iwconfig eth1 show configuration of a wireless network card
hostname show hostname
host www.example.com lookup hostname to resolve name to ip address and viceversa
nslookup www.example.com lookup hostname to resolve name to ip address and viceversa
whois www.example.com lookup on Whois database
GO TOP INDEX ^
Microsoft Windows networks (SAMBA)
nbtscan ip_addr netbios name resolution
nmblookup -A ip_addr netbios name resolution
smbclient -L ip_addr/hostname show remote shares of a windows host
smbget -Rr smb://ip_addr/share like wget can download files from a host windows via smb
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share mount a windows network share
㈤ 想學習Linux程序設計,但是本人是個真正的菜鳥
1樓太拆仿牛了,模旅到高校講授經驗。。。
其實你可以不用看書。。
linux靠命令來操作的。例如,你想查看media文件夾裡面有什麼東西,你可以用ls命令
例如 ls /media
就會把所有內容列出來。
想知道當前命令行在什麼位置,輸入pwd來顯示路徑
想新建一個空文件,touch 1.txt 或者 vi 1.txt 都可以。
要想編譯一個程序。
vi 1.c //寫好代碼
gcc 1.c 就編譯好了。
如果想要一本書來系統學習一旦御凳下,推薦你購買 鳥哥的linux私房菜 作者有出電子版,你搜索一下就有了。如果連搜索都懶的話,建議你不要學IT
㈥ linux菜鳥問題,有關文件許可權的!
對於目錄和文件來說,r,w,x這三個許可權表示的意義是不同的。
對目錄來說:
r: 可以查看該目錄的信息,如目錄的目鉛敬答錄,擁有者、擁有組等。
w: 可以修改該目錄名字,
x: 可以進入到目錄裡面,查看目錄下面的文件或者子目錄,同時對目錄下的文件和子目錄稿察有刪除、修改、添加的許可權(修改的前提是對該目錄有w許可權,例如r-xr--r--,如果是這樣,那擁有者只可以進入到目錄裡面,而並不能修改目錄下的東西,包括改名字,增刪等操作)槐慧。
文件許可權
r: 可以查看文件名,打開文件內容等;
w: 可以修改文件名,並修改文件內容,刪除該文件等;
x: 該文件可以被執行。
所以說,如果一個文件的許可權是-rw-r--r-- 的話,那任何一個用戶都可以讀取該文件的內容,與x許可權並被沒有關系的。至於你說的x許可權開放之類,是沒有這樣一個說法的。
不知道這樣說是否已經明白?
㈦ linux許可權菜鳥問題。。
這種許可權是多用戶設計的。通過 owner user, owner group , other 三個分類來進行許可權設置。每個分類都有 Read 、Write、灶爛備eXecute
這 9 個位置歷埋分成三組。每三個字母代表一個分類。「 - 」 是佔位符號,表示這里沒有設置許可權。如果你把它分成二進制的 0 和 1 來表示開關,就清楚了。每個 bit 代表一個許可權,1 表示可以,0 表示不可以。
也就是說,這個許可權就是如下的分割,第三行是二進制的表示。
owner|group|other
rwx | r-x | ---
111 | 101 | 000
這樣應該藉助2禁止就能幫你理解了,rwx 這三個字母和 - 本身是沒有意義的,真正的意義在於這個 bit 是不是被賦值為「可以」。
附加:一般這個表示法隱毀會改為 8 進製表示,也就是 111 表示為 7 ,101 表示為 5 ,000 還是 0 。rwxr-x--- 也就是 8 進制的 0750 (第一個 0 一般情況下表示他是 8 進制,就像 16 進制一般前面加 0x 一樣,但並不絕對是這樣)
㈧ 菜鳥如何學習linux命令
可以選擇培訓班,也可以選擇自學,無論什麼情況都可以通過書籍做一個簡單的入門,跟老男孩學Linux就很不錯。
㈨ Linux 高級命令
echo "HelloWorld"
向控制台輸出HelloWorld信息
Linux允許將命令執行結果重定向到一個文件,本應顯示在終端上叢卜笑的內容保存到指定文件中。
ls > test.txt
test.txt 如果不存在,則創建,存在則覆蓋其內容
注意: > 輸出重定向會覆蓋原來的內容, >> 輸出重定向則會追加到文件的尾部
cat xxx.py 可以用來快速查看某個文件內容,輸出到控制台
cat test.txt >> haha.txt 將test.txt的內容追加到haha.txt中
cat 1.txt 2.txt > 1_2.txt 將1.txt 2.txt內容合並到1_2.txt中
分屏顯示:more
查看內容時,在信息過長無法在一屏上顯示時,會出現弊差快速滾屏,使得用戶無法看清文件的內容,此時可以使用more命令,從頭開始,每次只顯示一頁,空格鍵顯示下一頁,b鍵上一頁,按下q鍵退出顯示,按下h鍵可以獲取幫助。
more xxx.py
管道:一個命令的輸出可以通過管道做為另一個命令的輸入。
管道我們可以理解現實生活中的管子,管子的一頭塞東西進去,另一頭取出來,這里「 | 」的左右分為兩端,左端塞東西(寫),右端取東西(讀)。即管道左邊的輸出結果作為管道右側的參數
cat info.txt | more
tree | more
::: warning
more管道符讀到的內容只能前進,不能後退;只能使用空格或回車向下看,不能使用b回看
:::
Linux鏈接文件類似於Windows下的快捷方式。
鏈接文件分為軟鏈接和硬鏈接。
ln -s 源文件 鏈接文件
ln 源文件 鏈接文件
沒有-s 選項代表建立一個硬鏈接文件,兩個文件佔用相同大小的硬碟空間,即使刪除了源文件,鏈接文件還是存在,一般用於保護系統重要的文件。所以-s選項是更常見的形式。
::: warning 注意
如果軟鏈接文件和源文件不在同一個目錄,源文件要使用絕對路徑,不能使用相對路徑。
:::
find命令功能非常強大,通常用來在特定的目錄下搜索符合條件的文件,也可以用來搜索特定用戶屬主的文件。
常用用法:
Linux系統中grep命令是一種強大的文本搜索工具,grep允許對文本文件進行模式查找。如果找到匹配模式, grep列印包含模式的所有行。
grep一般格式為:
在grep命令中輸入字元串參數時,最好用引號或雙引號括起來。
例如:
從某個文件搜索
搜索當前目錄所有文件
常用選項說明:**
grep搜索內容串可以是正則表達式。
正則表達式是對字元串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成一個「規則字元串」,這個「規則字元串」用來表達對字元串的一種過濾邏輯。
grep常用正則表達式:
計算機中的數據經滲含常需要備份,tar是Unix/Linux中最常用的備份工具,此命令可以把一系列文件歸檔到一個大文件中,也可以把檔案文件解開以恢復數據。
tar使用格式:
tar [參數] 打包文件名 文件
tar命令很特殊,其參數前面可以使用「-」,也可以不使用。
常用參數:
注意:除了f需要放在參數的最後,其它參數的順序任意。
常用命令:
tar與gzip命令結合使用實現文件打包、壓縮。 tar只負責打包文件,但不壓縮,用gzip壓縮tar打包後的文件,其擴展名一般用xxxx.tar.gz。也會見到縮寫的.tgz這種擴展名。
gzip使用格式如下:
常用選項:
tar這個命令並沒有壓縮的功能,它只是一個打包的命令,但是在tar命令中增加一個選項 -z 可以調用gzip實現壓縮的功能,最終實行一個先打包後壓縮的過程。
-z :指定壓縮包的格式為 xxx.tar.gz
tar壓縮: tar zcvf xxx.tar.gz 文件1 文件2 ...
tar解壓: tar zxvf xxx.tar.gz
解壓到指定目錄: tar zxvf xxx.tar.gz -C target_dir/ (大寫字母「C」)
tar與bzip2命令結合使用實現文件打包、壓縮(用法和gzip一樣)。
tar只負責打包文件,但不壓縮,用bzip2壓縮tar打包後的文件,其擴展名一般用xxxx.tar.bz2。
在tar命令中增加一個選項(-j)可以調用bzip2實現了一個壓縮的功能,實行一個先打包後壓縮的過程。
壓縮用法 : tar -jcvf 壓縮包包名 文件1 文件2... (例: tar jcvf bak.tar.bz2 *.c )
解壓用法 : tar -jxvf 壓縮包包名 (例: tar jxvf bak.tar.bz2 )
通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名為zip。
壓縮文件 :zip [-r] 目標文件(沒有擴展名) 源文件
解壓文件 :unzip -d 解壓後目錄文件 壓縮文件
使用tree命令可以查看指定目錄的樹狀結構
有時我們想知道被執行的命令在哪個目錄,以方便切換或更新不同版本,如Python。可以使用 which 命令
文件內容為:123 aaa bbb哈
執行 echo "123 aaa bbb哈" > xxx.txt
wc -l xxx.txt 文件內容的行數1
wc -w xxx.txt 文件內容的單詞數3
wc -c xxx.txt 文件內容的位元組數15
wc xxx.txt 文件內容的行數,單詞數,位元組數1 3 15
wc -m xxx.txt 文件的字元數13
sed 是一種流編輯器,它是文本處理中非常中的工具,能夠完美的配合正則表達式使用。一般用於自動編輯轉換程序,動態調整文件內容。
sed 's/good/GOODS/' file 替換每行第一個指定字元串(輸出所有行)
sed -n 's/good/GOODS/p' file 替換每行第一個指定字元串(只輸出替換的行)
sed -i 's/good/GOODS/g' file 替換所有指定字元串,並應用到文件
sed ƈd' file 刪除第二行
sed '/^test/d' 刪除good開頭的行
sed -n Ɖp' file 列印第3行
顯示當前時間 # Tue May 7 14:35:31 DST 2019
當前日期和時間 # 20190507-14:34:25
使用history命令可以查看之前輸過的命令及其id,
使用 !id 的形式,可以快速執行指定歷史命令
Linux命令大全: http://man.linuxde.net/
菜鳥Linux命令: https://www.runoob.com/linux/linux-command-manual.html