Linux命令
文章來源:中關村在線
基本操作命令:
---------------------------------------------------------------------- ----------------------------------------------------------------------
ls #以默認方式顯示當前目錄文件列表
ls –a #顯示所有文件包括隱藏文件
ls –l #顯示文件屬性,包括大小,日期,符號連接,是否可讀寫及是否可執行
ls --color=never *.so > obj #不顯示文字顏色,將所有so文件記錄到obj文件中
----------------------------------------------------------------------
cd dir #切換到當前目錄下的dir目錄
cd / #切換到根目錄
cd .. #切換到到上一級目錄
cd ../.. #切換到上二級目錄
cd ~ #切換到用戶目錄,比如是root用戶,則切換到/root下
----------------------------------------------------------------------
rm file #刪除某一個文件
rm -fr dir #刪除當前目錄下叫dir的整個目錄
----------------------------------------------------------------------
cp source target #將文件source 復制為 target
cp /root/source . #將/root下的文件source復制到當前目錄
cp –av soure_dir target_dir #將整個目錄復制,兩目錄完全一樣
cp –fr source_dir target_dir #將整個目錄復制,並且是以非鏈接方式復制,當source目錄帶有符號鏈接時,兩個目錄不相同
----------------------------------------------------------------------
mv source target #將文件source更名為target
---------------------------------------------------------------------
diff dir1 dir2 #比較目錄1與目錄2的文件列表是否相同,但不比較文件的實際內容,不同則列出
diff file1 file2 #比較文件1與文件2的內容是否相同,如果是文本格式的文件,則將不相同的內容顯示,如果是二進制代碼則只表示兩個文件是不同的
comm file1 file2 #比較文件,顯示兩個文件不相同的內容
---------------------------------------------------------------------
echo message #顯示一串字符
echo "message message2" #顯示不連續的字符串
cat:
cat file #顯示文件的內容,和DOS的type相同
cat file | more #顯示文件的內容並傳輸到more程序實現分頁顯示,使用命令less file可實現相同的功能
more #分頁命令,一般通過管道將內容傳給它,如ls | more
----------------------------------------------------------------------
export LC_ALL=zh_CN.GB2312 #將環境變量LC_ALL的值設為zh_CN.GB2312
export DISPLAY=0:0 #通過該設置,當前字符終端下運行的圖形程序可直接運行於Xserver
date #顯示當前日期時間
date -s 20:30:30 #設置系統時間為20:30:30
date -s 2002-3-5 #設置系統時期為2003-3-5
clock –r #對系統Bios中讀取時間參數
clock –w #將系統時間(如由date設置的時間)寫入Bios
----------------------------------------------------------------------
eject #umout掉CDROM並將光碟彈出,但cdrom不能處於busy的狀態,否則無效
---------------------------------------------------------------------
du #計算當前目錄的容量
du -sm /root #計算/root目錄的容量並以M為單位
find -name /path file #在/path目錄下查找看是否有文件file
grep -ir “chars” #在當前目錄的所有文件查找字串chars,並忽略大小寫,-i為大小寫,-r為下一級目錄
----------------------------------------------------------------------
vi file #編輯文件file
vi 原基本使用及命令:
輸入命令的方式為先按ctrl+c, 然後輸入:x(退出),:x!(退出並保存) :w(寫入文件),:w!(不詢問方式寫入文件), :r file(讀文件file) ,:%s/oldchars/newchars/g(將所有字串oldchars換成newchars) 這一類的命令進行操作
----------------------------------------------------------------------
man ls #讀取關於ls命令的幫助
man ls | grep color #讀取關於ls命令的幫助並通過grep程序在其中查找color字串
----------------------------------------------------------------------
startx #運行Linux圖形有環境
Xfree86 #只運行X圖形server
----------------------------------------------------------------------
reboot #重新啟動計算機
halt #關閉計算機
init 0 #關閉所有應用程序和服務,進入純淨的操作環境
init 1 #重新啟動應用及服務
init 6 #重新啟動計算機
----------------------------------------------------------------------
擴展命令
---------------------------------------------------------------------- ----------------------------------------------------------------------
tar xfzv file.tgz #將文件file.tgz解壓
tar xfzv file.tgz -C target_path #將文件file.tgz解壓到target_path目錄下
tar cfzv file.tgz source_path #將文件source_path壓縮為file.tgz
tar c directory > directory.tar #將目錄directory打包成不壓縮的directory.tar
gzip directory.tar #將覆蓋原文件生成壓縮的 directory.tar.gz
gunzip directory.tar.gz #覆蓋原文件解壓生成不壓縮的 directory.tar。
tar xf directory.tar #可將不壓縮的文件解包
----------------------------------------------------------------------
dmesg #顯示kernle啟動及驅動裝載信息
uname #顯示操作系統的類型
uname -R #顯示操作系統內核的version
----------------------------------------------------------------------
strings file 顯示file文件中的ASCII字符內容
----------------------------------------------------------------------
rpm -ihv program.rpm #安裝程序program並顯示安裝進程
rpm2targz program.rpm program.tgz #將rpm格式的文件轉換成tarball格式
----------------------------------------------------------------------
su root #切換到超級用戶
sulogin /dev/tty4 #在tty4即alt+F4終端等待用戶登陸或直接登陸開啟一個shell
chmod a+x file #將file文件設置為可執行,腳本類文件一定要這樣設置一個,否則得用bash file才能執行
chmod 666 file #將文件file設置為可讀寫
chown user /dir #將/dir目錄設置為user所有
----------------------------------------------------------------------
mknod /dev/hda1 b 3 1 #創建塊設備hda1,主設備號為3,從設備號為1,即master硬盤的的第一個分區
mknod /dev/tty1 c 4 1 #創建字符設備tty1,主設備號為4,眾設備號為1,即第一個tty終端
----------------------------------------------------------------------
touch /tmp/running #在/tmp下創建一個臨時文件running,重新啟動後消失
----------------------------------------------------------------------
sleep 9 #系統掛起9秒鐘的時間
----------------------------------------------------------------------
lpd stop 或 cups stop #停止打印服務程序
lpd start 或 cups start #啟動打印服務程序
lpd restart 或 cups restart #重新啟動打印服務程序
lpr file.txt #打印文件file.txt
----------------------------------------------------------------------
fdisk /dev/hda #就像執行了dos的fdisk一樣
cfdisk /dev/hda #比fdisk界面稍為友好些
mount -t ext2 /dev/hda1 /mnt #把/dev/hda1裝載到 /mnt目錄
df #顯示文件系統裝載的相關信息
mount -t iso9660 /dev/cdrom /mnt/cdrom #將光驅加載到/mnt/cdrom目錄
mount-t smb //192.168.1.5/sharedir /mnt -o username=tomlinux,password=tomlinux #將windows的的共享目錄加載到/mnt/smb目錄,用戶名及密碼均為tomlinux
mount -t nfs 192.168.1.1:/sharedir /mnt #將nfs服務的共享目錄sharedir加載到/mnt/nfs目錄
umount /mnt #將/mnt目錄卸載,/mnt目錄必須處於空閒狀態
umount /dev/hda1 #將/dev/hda1設備卸載,設備必須處於空親狀態
sync #將cache中的內容與磁盤同步,在Linux中復制文件,一般要系統空閒才去寫文件
e2fsck /dev/hda1 #檢查/dev/hda1是否有文件系統錯誤,提示修復方式
e2fsck -p /dev/hda1#檢查/dev/hda1是否有錯誤,如果有則自動修復
e2fsck -y /dev/hda1#檢查錯誤,所有提問均於yes方式執行
e2fsck -c /dev/hda1#檢查磁盤是否有壞區
mkfs /dev/hda1 #格式化/dev/hda1為ext2格式
mkfs.minix /dev/hda1 #格式化/dev/hda1為minix格式文件系統
mfks /dev/hda9 #格工化/dev/hda9為Linux swap格式
swapon /dev/hda9 #將swap分區裝載當作內存來用
swapoff /dev/hda9 #將swap分區卸載
----------------------------------------------------------------------
lilo #運行lilo程序,程序自動查找/etc/lilo.conf並按該配置生效
lilo -C /root/lilo.conf #lilo程序按/root/lilo.conf配置生效
grub #在Linux shell狀態下運行boot loader設置程序
grub-install #安裝grub磁盤引導程序,成功後升級內核無須像lilo一樣要重新啟動系統,只需修改/etc/grub.conf即可實現新引導配置
rdev bzImage #顯示kernel的根分區信息
rdev bzImage /dev/hda1 #將kernel的根分區設置為/dev/hda1,這在沒有lilo等引導程序的系統中非常重要.
----------------------------------------------------------------------
dd if=/dev/fd0 of=floppy.fd #將軟盤的內容復制成一個鏡像,功能與舊石器時代常用的hd-copy相同
dd if=/dev/zero of=root.ram bs=1024,count=1024 #生成一個大小為1M的塊設備,可以把它當作硬盤的一個分區來用
mkfs root.ram #將塊設備格式化為ext2格式
dd if=root.ram of=/dev/ram0 #將init.rd格式的root.ram的內容導入內存
mount /dev/ram0 /mnt #ramdisk /dev/ram0裝載到/mnt 目錄
----------------------------------------------------------------------
gcc hello.c #將hello.c編譯成名為a.out二進制執行文件
gcc hello.c -o hello #將hello.c編譯成名為hello的二進制執行文件
gcc -static -o hello hello.c #將hello.c編譯成名為hello的二進制靜態執行文件
ldd program #顯示程序所使用了哪些庫
objcopy -S program #將程序中的符號表及無用的調試信息去掉,可以小很多
----------------------------------------------------------------------
strace netscape #跟蹤程序netscape的執行,看調用的庫,環境變量設置,配置文件,使用的設備,調用的其它應用程序等,在strace下,程序干了什麼東東一目了然。
ps #顯示當前系統進程信息
ps –ef #顯示系統所有進程信息
kill -9 500 #將進程編號為500的程序干掉
killall -9 netscape #將所有名字為netscape的程序殺死,kill不是萬能的,對僵死的程序則無效。
top #顯示系統進程的活動情況,按占CPU資源百分比來分
free #顯示系統內存及swap使用情況
time program #在program程序結束後,將計算出program運行所使用的時間
----------------------------------------------------------------------
chroot . #將根目錄切換至當前目錄,調試新系統時使用
chroot /tomlinux #將根目錄切換至/tomlinux目錄
chroot /tomlinux sbin/init #將根目錄切換至/tomlinux並執行sbin/init
adduser id #增加一個叫id的用戶
userdel id #增除叫id的用戶
userlist #顯示已登陸的用戶列表
passwd id #修改用戶id的密碼
passwd -d root #將root用戶的密碼刪除
chown id /work #指定/work目錄為id用戶所擁有
----------------------------------------------------------------------
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 #設置網卡1的地址192.168.1.1,掩碼為255.255.255.0,不寫netmask參數則默認為255.255.255.0
ifconfig eth0:1 192.168.1.2 #捆綁網卡1的第二個地址為192.168.1.2
ifconfig eth0:x 192.168.1.x #捆綁網卡1的第二個地址為192.168.1.x
ifconfig down eth1 #關閉第二塊網卡,使其停止工作
hostname -F tomlinux.com #將主機名設置為tomlinux.com
route #顯示當前路由設置情況
route add default gw 192.168.1.1 metric 1 #設置192.168.1.1為默認的路由
route del default #將默認的路由刪除
dhcp #啟動dhcp服務
dhclient #啟動dhcp終端並自動獲取IP地址
ping 163.com #測試與163.com的連接
ping 202.96.128.68 #測試與IP 202。96.128.68的連接
----------------------------------------------------------------------
probe rtl8139 #檢查驅動程序rtl8139.o是否正常工作
lsmod #顯示已裝載的驅動程序
insmod rtl8139.o #裝載驅動程序rtl8139.o
insmod sb.o io=0x280 irq=7 dma=3 dma16=7 mpu_io=330 #裝載驅動程序並設置相關的irq,dma參數
rmmod rtl8139 #刪除名為rtl8139的驅動模塊
gpm -k #停止字符狀態下的mouse服務
gpm -t ps2 #在字符狀態下以ps2類型啟動mouse的服務
----------------------------------------------------------------------
telnet 192.168.1.1 #登陸IP為192.168.1.1的telnet服務器
telnet iserver.com #登陸域名為iserver.com的telnet服務器
ftp 192.168.1.1 或 ftp iserver.com #登陸到ftp服務