linux48
Ⅰ 關於linux的(操作過程中的Linux命令必須完整給出)
Linux系統越來越受到電腦用戶的歡迎,於是很多人開始學習Linux時,學習linux,你可能會遇到Linux網路操作命令問題,這里將介紹Linux網路操作命令知識,在這里拿出來和大家分享一下。計算機網路的主要優點是能夠實現資源和信息的共享,並且用戶可以遠程訪問信息。Linux提供了一組強有力的網路命令來為用戶服務,這些工具能夠幫助用戶登錄到遠程計算機上、傳輸文件和執行遠程命令等。介紹下列幾個常用的有關網路操作命令:ftp 傳輸文件
telnet 登錄到遠程計算機上
r - 使用各種遠程命令
netstat 查看網路的狀況
nslookup 查詢域名和IP地址的對應
finger 查詢某個使用者的信息
ping 查詢某個機器是否在工作使用ftp命令進行遠程文件傳輸
ftp命州判租令是標準的文冊兆件傳輸協議的用戶介面。ftp是在TCP/IP網路上的計算機之間傳輸文件的簡單有效的方法。它允許用戶傳輸ASCII文件和二進制文件。 在ftp會話過程中,用戶可以通過使用ftp客戶程序連接到另一台計算機上。從此,用戶可以在目錄中上下移動、列出目錄內容、把文件從遠程機拷貝到本地機上、把文件從本地機傳輸到遠程系統中。需要注意的是,如果用戶沒有那個文件的存取許可權,就不能從遠程系統中獲得文件或向遠程系統傳輸文件。 為了使用ftp來傳輸文件,用戶必須知道遠程計算機上的合法用戶名和口令。這個用戶名/口令的組合用來確認ftp 會話,並用來確定用戶對要傳輸的文件可以進行什麼樣的訪問。另外,用戶顯然需要知道對其進行ftp 會話的計算機的名字或IP地址。Ftp命令的功能是在本地機和遠程機之間傳送文件。該命令的一般格式如下:
$ ftp 主機名/IP其中「主機名/IP」是所要連接的遠程機的主機名或IP地址。在命令行中,主機名屬於選項,如果指定主機名,ftp將試圖與遠程機的ftp服務程序進行連接;如果沒有指定主機名,ftp將給出提示符,等待用戶輸入命令: $ ftp ftp > 此時在ftp>提示符後面輸入open命令加主機名或IP地址,將試圖連接指定的主機。 不管使用哪一種方法,如果連接成功,需要在遠程機上登錄。用戶如果在遠程機上有帳號,就可以通過ftp使用這一帳號並需要提供口令。
在遠程機上的用戶帳號的讀寫許可權決定該用戶在遠程機上能下載什麼文件和將上載文件放到哪個目錄中。 如果沒有遠程機的專用登錄帳號,許多ftp站點設有可以使用的特殊帳號。這個帳號的登錄名為anonymous(也稱為匿名ftp),當使用這一帳號時,要求輸入email地址作為口令。 如果遠程系統提供匿名ftp服務,用戶使用這項服務可以登錄到特殊的,供公開使用的目錄。一般專門提供兩個目錄:pub目錄和incoming目錄。pub目錄包含該站點供公眾使用的所有文件,incoming目錄存放上載到該站點的文件。 一旦用戶使用ftp在遠程站點上登錄成功,將得到「ftp>」提示符。現在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在 help命令後面指定具體的命令名稱,獲得這條命令的說明。
最常用的命令有:
ls 列出遠程機的當前目錄
cd 在遠程機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設置文件傳輸方式為ASCII模式
binary 設置文件傳輸方式為二進制模式
close終止當前的ftp會話
hash 每次傳輸完數據緩沖區中的數據後就顯示一個#號
get(mget) 從遠程機傳送指定文件到本地機
put(mput) 從本地機傳送指定文件到遠程機
open 連接遠程ftp站點
quit斷開與遠程機的連接並退出ftp
? 顯示本地幫助信息
! 轉到Shell中下面簡單將ftp常用命令作一簡介。
啟動ftp會話 open命令用於打開一沖燃個與遠程主機的會話。該命令的一般格式是: open 主機名/IP 如果在ftp 會話期間要與一個以上的站點連接,通常只用不帶參數的ftp命令。如果在會話期間只想與一台計算機連接,那麼在命令行上指定遠程主機名或IP地址作為ftp命令的參數。 終止ftp會話 close、disconnect、quit和bye命令用於終止與遠程機的會話。close和disronnect命令關閉與遠程機的連接,但是使用戶留在本地計算機的ftp程序中。quit和bye命令都關閉用戶與遠程機的連接,然後退出用戶機上的ftp 程序。 改變目錄 「cd [目錄]」命令用於在ftp會話期間改變遠程機上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。 遠程目錄列表 ls命令列出遠程目錄的內容,就像使用一個交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄] [本地文件] 如果指定了目錄作為參數,那麼ls就列出該目錄的內容。如果給出一個本地文件的名字,那麼這個目錄列表被放入本地機上您指定的這個文件中。 從遠程系統獲取文件 get和mget命令用於從遠程機上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個文件名是這個要獲取的文件在您的本地機上創建時的文件名。如果您不給出一個本地文件名,那麼就使用遠程文件原來的名字。 mget命令一次獲取多個遠程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要獲取的文件,對其中的每個文件都要求用戶確認是否傳送。 向遠程系統發送文件 put和mput命令用於向遠程機發送文件。Put命令的一般格式為: put 文件名 mput命令一次發送多個本地文件,mput命令的一般格式為: mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要發送的文件。對其中的每個文件都要求用戶確認是否發送。 改變文件傳輸模式 默認情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設置傳輸的模式。用ASCII模式傳輸文件對純文本是非常好的,但為避免對二進制文件的破壞,用戶可以以二進制模式傳輸文件。 檢查傳輸狀態 傳輸大型文件時,可能會發現讓ftp提供關於傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數據緩沖區中的數據後,就在屏幕上列印一個#字元。本命令在發送和接收文件時都可以使用。 ftp中的本地命令 當您使用ftp時,字元「!」用於向本地機上的命令shell傳送一個命令。如果用戶處在ftp會話中,需要shell做某些事,就很有用。例如用戶要建立一個目錄來保存接收到的文件。如果輸入!mkdir new_dir,那麼Linux就在用戶當前的本地目錄中創建一個名為new_dir 的目錄。從遠程機grunthos下載二進制數據文件的典型對話過程如下:
$ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc): anonymous 33l Guest login ok, send your complete e-mail address as password. Password: 230 Guest 1ogin ok, access restrictions apply. Remote system type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls 200 PORT command successful. l50 opening ASCII mode data connection for /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200 type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark). ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226 Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec) ftp > quit 22l Goodbye.使用telnet命令訪問遠程計算機
用戶使用telnet命令進行遠程登錄。該命令允許用戶使用telnet協議在遠程計算機之間進行通信,用戶可以通過網路在遠程計算機上登錄,就像登錄到本地機上執行命令一樣。 為了通過telnet登錄到遠程計算機上,必須知道遠程機上的合法用戶名和口令。雖然有些系統確實為遠程用戶提供登錄功能,但出於對安全的考慮,要限制來賓的操作許可權,因此,這種情況下能使用的功能是很少的。當允許遠程用戶登錄時,系統通常把這些用戶放在一個受限制的shell中,以防系統被懷有惡意的或不小心的用戶破壞。 用戶還可以使用telnet從遠程站點登錄到自己的計算機上,檢查電子郵件、編輯文件和運行程序,就像在本地登錄一樣。
但是,用戶只能使用基於終端的環境而不是X Wndows環境,telnet只為普通終端提供終端模擬,而不支持 X Wndow等圖形環境。 telnet命令的一般形式為: telnet 主機名/IP 其中「主機名/IP」是要連接的遠程機的主機名或IP地址。如果這一命令執行成功,將從遠程機上得到login:提示符。 使用telnet命令登錄的過程如下: $ telnet 主機名/IP 啟動telnet會話。 一旦telnet成功地連接到遠程系統上,就顯示登錄信息並提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄並在遠程系統上工作。 在telnet提示符後面可以輸入很多命令,用來控制telnet會話過程,在telnet聯機幫助手冊中對這些命令有詳細的說明。下面是一台Linux計算機上的telnet會話舉例:
$ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve. somewhere. com. Escape character is \'?]\'. 「TurboLinux release 4. 0 (Colgate) kernel 2.0.18 on an I486 login: bubba password: Last login:Mon Nov l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$ logout Connection closed by foreign host $用戶結束了遠程會話後,一定要確保使用logout命令退出遠程系統。然後telnet報告遠程會話被關閉,並返回到用戶的本地機的Shell提示符下。 r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問遠程計算機和在網路上交換文件。 使用r-系列命令需要特別注意,因為如果用戶不小心,就會造成嚴重的安全漏洞。用戶發出一個r-系列命令後,遠程系統檢查名為/etc/hosts.equiv的文件,以查看用戶的主機是否列在這個文件中。如果它沒有找到用戶的主機,就檢查遠程機上同名用戶的主目錄中名為.rhosts的文件,看是否包括該用戶的主機。如果該用戶的主機包括在這兩個文件中的任何一個之中,該用戶執行r-系列命令就不用提供口令。雖然用戶每次訪問遠程機時不用鍵入口令可能是非常方便的,但是它也可能會帶來嚴重的安全問題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細考慮r-命令隱含的安全問題。rlogin命令
rlogin 是「remote login」(遠程登錄)的縮寫。該命令與telnet命令很相似,允許用戶啟動遠程系統上的交互命令會話。rlogin 的一般格式是:
rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host一般最常用的格式是: rlogin host 該命令中各選項的含義為:
-8 此選項始終允許8位輸入數據通道。該選項允許發送格式化的ANSI字元和其他的特殊代碼。如果不用這個選項,除非遠端的終止和啟動字元不是或,否則就去掉奇偶校驗位。
-E 停止把任何字元當作轉義字元。當和-8選項一起使用時,它提供一個完全的透明連接。
-K 關閉所有的Kerberos確認。只有與使用Kerberos 確認協議的主機連接時才使用這個選項。
-L 允許rlogin會話在litout模式中運行。要了解更多信息,請查閱tty聯機幫助。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多信息,請查閱setsockopt的聯機幫助。
-e 為rlogin會話設置轉義字元,默認的轉義字元是「~」,用戶可以指定一個文字字元或一個\\nnn形式的八進制數。
-k 請求rlogin獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos 許可。
-x 為所有通過rlogin會話傳送的數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。rsh命令
rsh是「remote shell」(遠程 shell)的縮寫。 該命令在指定的遠程主機上啟動一個shell並執行用戶在rsh命令行中指定的命令。如果用戶沒有給出要執行的命令,rsh就用rlogin命令使用戶登錄到遠程機上。
rsh命令的一般格式是:
rsh [-Kdnx] [-k realm] [-l username] host [command]
一般常用的格式是:
rsh host [command ]
command可以是從shell提示符下鍵人的任何Linux命令。
rsh命令中各選項的含義如下:
-K 關閉所有的Kerbero確認。該選項只在與使用Kerbero確認的主機連接時才使用。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多的信息,請查閱setsockopt的聯機幫助。
-k 請求rsh獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-l 預設情況下,遠程用戶名與本地用戶名相同。本選項允許指定遠程用戶名,如果指定了遠程用戶名,則使用Kerberos 確認,與在rlogin命令中一樣。
-n 重定向來自特殊設備/dev/null的輸入。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 Linux把標准輸入放入rsh命令中,並把它拷貝到要遠程執行的命令的標准輸入中。它把遠程命令的標准輸出拷貝到rsh的標准輸出中。它還把遠程標准錯誤拷貝到本地標准錯誤文件中。任何退出、中止和中斷信號都被送到遠程命令中。當遠程命令終止了,rsh也就終止了。rcp命令
rcp代表「remote file 」(遠程文件拷貝)。該命令用於在計算機之間拷貝文件。
rcp命令有兩種格式。第一種格式用於文件到文件的拷貝;第二種格式用於把文件或目錄拷貝到另一個目錄中。
rcp命令的一般格式是:
rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file
directory 每個文件或目錄參數既可以是遠程文件名也可以是本地文件名。遠程文件名具有如下形式:rname@rhost:path,其中rname是遠程用戶名,rhost是遠程計算機名,path是這個文件的路徑。
rcp命令的各選項含義如下:
-r 遞歸地把源目錄中的所有內容拷貝到目的目錄中。要使用這個選項,目的必須是一個目錄。
-p 試圖保留源文件的修改時間和模式,忽略umask。
-k 請求rcp獲得在指定區域內的遠程主機的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 如果在文件名中指定的路徑不是完整的路徑名,那麼這個路徑被解釋為相對遠程機上同名用戶的主目錄。如果沒有給出遠程用戶名,就使用當前用戶名。如果遠程機上的路徑包含特殊shell字元,需要用反斜線(\\)、雙引號(」)或單引號(』)括起來,使所有的shell元字元都能被遠程地解釋。 需要說明的是,rcp不提示輸入口令,它通過rsh命令來執行拷貝。 - Turbolinux 提供稿件。通過本文你就了解Linux網路操作命令,希望對你有所幫助。
Ⅱ linux常用命令有哪些
Linux常用命令大全100條:
1,echo 「aa」 》 test.txt 和 echo 「bb」 》》 test.txt
//》將原文件清空,並且內容寫入到文件中,》》將內容放到文件的尾部
2,chmod go+w -R /home/zhangy //給組用戶和其他用戶添加寫的許可權
3,tar -tzvf test.tar.gz //列出歸檔內容
4, -ah //查看文件列表大小
5, -sh //查看所有文件的大小總和
6,echo 『1+2』|bc -l //數學運算
7,uname -a //查看linux內核等的一些信息
8,badblocks -s /dev/sda //壞道掃描時顯示進度
9,time command //查看命令的運行時間
10,ls -lrt //按時間的倒序排序
11,rsync -P //同步時顯示進度
12.history -c //清楚歷史命令
13,cd - //返回上次目錄
14,tree //顯示目錄樹
15,umount -n /mnt/hda2 //強制卸載
16,echo ~/ //顯示用戶的home目錄
17,echo $[5*5] //算術運算
18,echo $((5*5)) //算術運算
19,eval ls;ps aux|grep httpd //這二個命令都能執行
20,free -m //有MB為單位顯示內存
21,uptime
//顯示系統已經運行了多長時間,它依次顯示下列信息:現在時間、系統已經運行了多長時間、目前有多少登陸用戶、系統在過去的1分鍾、5分鍾和15分鍾內的平均負載
22,加法運算
[root@krlcgcms01 mytest]# let a=34+3;
[root@krlcgcms01 mytest]# echo $a;
23,export //查看所有環境變數
24,echo $PATH //查看單個變數
25,cmp file1 file2 //文件內容比對
26,clear //清屏
27,echo 23423 |awk --re-interval 『/[0-9]{3,}/』 //如果不加re-interval的話,不顯示
28,cal //得到一個整齊的日歷格式
29,wc -l //統計行數,wc -w 統計單詞
30,echo 「AaDCbd23」 |tr 「[A-Z]」 「[a-z]」 大寫變小寫,echo 「AaDCbdc23」 |tr -c b-d =
將b-d之外的字元串替換成=
31,echo 「ADSF」 | iconv -f UTF8 -t GBK //把字元由utf8轉成gbk
-f是from和簡寫,-t好像terminal的簡寫
32,cat -n file //內容的前面會顯示行號
33,chattr +i file //只讀,root用戶也沒法對其進行修改
34,lsattr file //查看文件屬性
35,cat /etc/passwd |awk -F: 『{print $1}』 //查看系統中所有用戶
36,cat /etc/group //查看系統中所有的組
37,groups //查前當前用戶所在的,所有組
38,usermod -g 組名 用戶 //這種方式是覆蓋的方式,用的時候要小心,如果用戶A性於mysql usermod -g php
mysql這樣的話只屬於php了
39,usermod -G 組名 用戶 //這種方式是增加的方式,如果用戶A性於mysql usermod -g php
mysql這樣的話,mysql就屬於2個組了
40,bc //進入數學計算中去
41,umask 003 u許可權是7,g許可權是7,其他用戶是4,也就是774,777-003=774
42,mkfs -t vfat /dev/hda6 //將移動硬碟裡面的一個分區格式化成vfat格式
43,mount /dev/cdrom /media/cdrom //掛載cdrom
44,getent group 532 //通過組ID,來查找組信息
45,last //登錄成功用戶記錄
46,lastb //登錄不成功用戶記錄
47,mp -S /dev/sda2 //查看一下要備份/dev/sda2所要的容量
48,mp -0j -f /dev/hda2/sda2_bak.mp.bz2 /dev/sda2 //將sda2進行備份並壓縮
49,restore -t -f /dev/hda2/sda2_bak.mp //查看備份信息
50,restore -r -f /dev/hda2/sda2_bak.mp //還原備份
51,fc-list //查看系統中安裝的字體
52,find 。/ -type f -exec grep -q 「root」 {} ; -exec echo {} ;
//查找目錄下文件所包涵的字元串
53,vmstat 5 //每5顯示一下次系統信息,cpu,memory,i/o等
54,top 後 在shift + P 所佔進程的排序顯示
55,top 後 在shift + M 所佔內存的排序顯示
56,iptraf -g //查看各個介面的流量
57,ostat -d -x /dev/sda2 2 //用iostat查看磁碟/dev/sda2的磁碟i/o情況,每兩秒刷新一次
58, paste -sd 『|||n』 test //文件的每4行轉換成1行,並用|隔開
59,lsof -i :22 //知道22埠現在運行什麼程序
60,lsof -c abc //顯示abc進程現在打開的文件
61,lsof -p 12 //看進程號為12的進程打開了哪些文件
63,route //查看路由信息
64,ifup //開啟網卡
65,ifdown //關閉網卡
66,route del -net 172.168.0.0 netmask 255.255.0.0 dev eth0 //刪除
172.168這個網段
67,route add -net 172.168.10.0 netmask 255.255.255.0 dev eth0 //增加一個路由
68,netstat -tunl //列出監聽的網路服務埠
69,netstat -tun //列出已連接的網路服務埠
70,nmap -sP 172.30.4.0/24 //在這個網段內有多少用戶在我的主機上操作,一個不錯的安全檢查工具
71,vgdisplay //查看系統中的可用空間
72,lvextend -L+20G /dev/tank/part1 //向part1這個分區增加20G的空間
73,lvresize -L-10G /dev/tank/part2 //向part2這個分區減少10G的空間
74,pvdisplay //查看磁碟信息
75,mplayer -loop 10 /mnt/song/music/花兒開了.mp3 //循環播放10遍
76,pacman -S firefox -nd //nd去掉依賴
77,wget -c //斷點下載
78,chroot /mnt/ubuntu //改變根目錄到/mnt/ubuntu
79,ctrl+a //命令行下,游標稱動到開頭
80,ctrl+e //命令行下,游標移動結尾
81,cut -d: -f 1-4 test //用:分割文件,取分割後的1-4列
82,file /home/zhangy/test.php //用於查看文件的一些基本信息
83,touch test.txt //創建一個空文件 text.txt
84,htpasswd -cbd /usr/local/nginx/conf/authfile //創建訪問控制文件
85,df //查看磁碟空間,和當前的磁碟數
86,fdisk -l //查看所有磁碟數
87,alsamixer //進入後,m鍵可以實現靜音
88,killall httpd //把所有httpd進程殺掉
89,killall -9 mysqld_safe //有些進程超級用戶也停止不了,-9是強制刪除
90,mirror /mysql //下載mysql目錄
91,mirror -R /mysql //上傳mysql目錄
92,rmmod pcspkr //關掉tab提示音
93,modprobe pcspkr //開啟tab提示音
94,gpasswd -a zhangy wheel //將zhangy這個用戶添加到wheel這個組
95,dd if=/dev/zero of=/virtual/ubuntu.virt.img bs=1M count=4096
//創建一個4G的IMG鏡像
96,lspic //顯示pci設備
97,lsusb //顯示usb設備
98,history | less //less根more有點像,感覺less用著更舒服點
99,ln -s //如果忘了-s就變成硬鏈接了
100,tar zxvf test.tar.gz -C /home/zhangy //將內容解壓到指定目錄
Ⅲ 請問下面這個sizeof(struct data)為什麼在visual studio下是48,在linux下是44
a——12
12
cow——20
32
cat——8
40
dog—正蘆—8
48
window的腔褲double按照8個舉圓帶位元組對齊
Ⅳ linux系統怎樣設置每48小時重啟一次
crontab -e
這個就是設置計劃任務的,你加入sudo reboot
Ⅳ linux內核版本中,2.2.48 和2.6.1那個是穩定版本
都是穩定版本。
在linux的內核版本中凱信,由3段組成,以.隔開,第二段中偶數表仔鄭示穩定版本,念孫頌奇數表示開發版本。
Ⅵ linux 64位 48G是多少M
是有32位和64位之分的。 各大發行版linux中都會明確指出版本。下載ubuntu時會明確要求你選擇64位或乎芹32位的ubuntu;散頃拿i386就是32位版本,x86_64為64位版本。 在Shell中,可以用命令getconf LONG_BIT查看,或者命令uname -a(m)查看。沖搭
Ⅶ 在linux下報錯/usr/include/ctype.h:48:1: 錯誤: expected 『;』, identifier or 『(』 before 『enum』
你野碰看看頌哪談你自己的程序是不是引用頭緩瞎文件出錯了,或者是你在調用頭文件函數的位置出錯了,最好加斷點或者日誌調試一下
Ⅷ 請問下面這個sizeof(struct data)為什麼在visual studio下是48,在linux下是44
首先了解Win32平台下的微軟 編譯器(cl.exe for 80×86)的對齊策略1) 結構體變數的首答檔團地址能夠被其最寬基本類型成員的大小所整除;2) 結構體每個成員相對於結構體首地址的偏移量(offset)都是成員大小的整清橘數倍,如有需要編譯器會在成員之間加上填充位元組(internal adding);3) 結構體的總大小為結構體最寬基本類型成員大小的整數倍,如有需要,編譯器會在最末一個成員之後加上填充位元組(trailing padding)。
首先分配char a[10]的內存,數組a的每個元素char類型,每個元素都佔1個位元組,所以首先分配了10個位元組,然後分配cow的內存,他是一個共用體,共用體的寬度的最大的基本類型是long,它在vs上分配的位元組是4個位元組。所以相對於struct,cow內存分配的偏移地址一定要能整除4,因為前面分配給a分配了10個位元組的內存,所以如果在a後面直接分配內存不滿足第二條,其偏移起始量為10,這里需要填充兩個位元組,使得給cow分配的內存相對於struct的起始偏移量為12,這個共用體的長度是20,至此總共分配了32個位元組的內存,再給cat分配內存,由於之前已經分配了32個位元組,所以相對於struct的起始偏移量為32,可以整除int的寬度,因此在偏移量為32的地方分配4個位元組蠢早,共分配了36個位元組了。再給double分配內存,由於分配了cat之後,相對於struct的地址偏移量為36,若從這里給dog分配內存則不滿足第二條策略,因此要填充4個位元組,使得內存偏移量為40,這時再分配8個位元組內存給dog,至此,struct總共分配了48個位元組。再用策略三判別分配的位元組是否符合要求,由於該struct的寬度最寬的成員變數是dog,其大小為8個位元組,可被48整除,滿足策略三,因此整個struct的內存大小為48個位元組。
Ⅸ Linux命令應用大全的圖書簡介
作者: 張洪波,陳洪彬,吳君編著
出 版 社: 清華大學出版社
出版時間: 2009-1-1
字數: 866000
版次: 1
頁數: 587
開本: 16開
印次: 1
紙張: 膠版紙
S B N : 9787302191025
包裝: 平裝
所屬分類: 圖書 >> 計算機/網路 >> 操作系統/系統開發 >> LINUX
定價:¥65.00 本書圍繞Linux命令行下的命令進行深入而細致的講解。本書的編寫基於Linux Fedora 8操作系統2.6內核,幾乎涵蓋了Linux命令行下所有的命令,並介紹其對應的功能說明、語法說明、選項介紹、典型示例和相關命令,對每一個命令都做了較為詳盡的介紹並結合大量的實例進行具體說明。讀者可以通過對本書的學習,深入理解Linux命令。
本書所介紹的命令同時也適用於其他Linux版本,是Linux用戶必備的參考用書。 第1章 系統管理命令
1.adser命令:增加一個系統用戶
2.apmd命令:高級電源管理
3.apmsleep命令:產生配置腳本
4.apropos命令:查找用戶手冊的名字和相關描述
5.arch命令:輸出主機的體系結構
6.batch命令:執行批處理
7.bg命令:將程序放在後台執行
8.cd命令:切換目錄
9.chfn命令:設置finger信息
10.chsh命令:改變登錄系統時的shell
11.clear命令:清除終端屏幕
12.date命令:顯示或設置系統時間
13.echo命令:顯示文本行
14.exec命令:執行命令後交出控制權
15.exit命令:退出shell
16.fc命令:修改或執行命令
17.fg命令:將後台任務拉到前台執行
18.fgconsole命令:列印虛擬終端的數目
19.finger命令:查找並顯示用戶的信息
20.free命令:顯示內存信息
21.fuser命令:用文件或者套介面表示進程
22.fwhois命令:顯示用戶的信息
23.gcov命令:coverage測試工具
24.gdialog命令:從shell顯示文本信息
25.gitps命令:顯示程序情況
26.groupadd命令:創建一個新的群組
27.groupdel命令:刪除一個群組
28.groupmod命令:改變系統群組的屬性
29.halt命令:關閉系統
30.help命令:顯示shell的內建命令的幫助信息
31.history命令:顯示歷史命令
32.htpasswd命令:創建和更新用戶的認證文件
33.id命令:顯示用戶及群組的ID
34.info命令:讀取目錄信息
35.init命令:開關機設置
36.ipcs命令:顯示進程間通信的信息
37.ipcrm命令:刪除消息隊列、旗語設置或者共享內存的ID
38.jobs命令:顯示所有的後台程序
39.kill命令:終止執行中的程序
40.killall命令:終止同名的所有進程
41.last命令:顯示目前和過去登錄系統的用戶相關信息
42.lastb命令:顯示登錄系統失敗的用戶相關信息
43.login命令:登錄系統
44.logname命令:顯示登錄賬號的信息
45.logrotate命令:處理log文件
46.logout命令:退出系統
47.lsmod命令:顯示Linux內核模塊信息
48.man命令:格式化和顯示在線手冊
49.manpath命令:設置man手冊的查詢路徑
50.mkfontdir命令:創建字體文件目錄
51.mount命令:掛載文件系統
52.mpost命令:系統的繪畫工具
53.msgcat命令:合並消息目錄
54.msgcomm命令:匹配兩個消息目錄
55.msgen命令:創建英語消息目錄
56.msginit命令:初始化消息目錄
57.newgrp命令:登錄另一個群組
58.nohup命令:退出系統繼續執行命令
59.ntsysv命令:設置系統的各種服務
60.open命令:開啟虛擬終端
61.pgrep命令:基於名字和其他屬性的查找或信號處理
62.pidof命令:查找運行程序的ID
63.pkill命令:終止程序
64.pmap命令:顯示程序的內存信息
65.procinfo命令:顯示系統狀態
66.ps命令:報告程序狀況
67.pstree命令:以樹狀圖顯示程序
68.pwck命令:檢查密碼文件
69.pwd命令:顯示工作目錄
70.reboot命令:重新啟動
71.renice命令:調整優先順序
72.rlogin命令:遠程登錄
73.rmmod命令:刪除模塊
74.rsh命令:遠程登錄的shell
75.rwho命令:查看系統用戶
76.screen命令:多重視窗管理程序
77.shutdown命令:系統關機命令
78.sleep命令:休眠
79.su命令:變更用戶身份
80.sudo命令:以其他的身份執行命令
81.suspend命令:暫停執行shell
82.swatch命令:系統監控程序
83.symlinks命令:維護符號鏈接的工具程序
84.tload命令:顯示系統負載
85.top命令:顯示進程信息
86.uname命令:顯示系統信息
87.useradd命令:建立系統賬號
88.userconf命令:用戶賬號設置
89.usermod命令:修改用戶賬號
90.userdel命令:刪除用戶賬號
91.users命令:顯示用戶
92.vlock命令:鎖定終端
93.w命令:顯示登錄系統的用戶信息
94.wait命令:等待程序返回狀態
95.watch命令:將結果輸出到標准輸出設備
96.whereis命令:查找文件
97.which命令:查找文件
98.who命令:顯示系統用戶信息
99.whoami命令:顯示用戶名
100.whois命令:顯示指定用戶信息
101.&命令:將任務放在後台執行
第2章 系統設置命令
1.alias命令:設置命令的別名
2.apmd命令:高級電源管理
3.at命令:指定執行命令的時間
4.atd命令:執行已經排隊的任務
5.atq命令:檢查排隊的任務
6.atrm命令:刪除已經排隊的任務
7.atrun命令:執行已經排隊的任務
8.aumix命令:設置音效設備
9.authconfig命令:配置系統的認證信息
10.bind命令:顯示或者設置按鍵組合
11.chkconfig命令:設置系統的應用程序
12.chroot命令:改變根目錄
13.clock命令:設置系統的RTC時間
14.crontab命令:設置計時器
15.declare命令:顯示或者設定shell變數
16.depmod命令:模塊關系
17.dircolors命令:ls命令對應的顯示顏色
18.dmesg命令:顯示開機信息
19.enable命令:可用的shell內置命令
20.eval命令:連接多個命令
21.export命令:設置或顯示環境變數
22.false命令:不做任何事情,表示失敗
23.fbset命令:設置幀緩沖區
24.hash命令:顯示和清除哈希表
25.hostid命令:列印當前主機的標識
26.hostname命令:顯示或設置當前系統的主機名
27.hwclock命令:顯示和設定硬體時鍾
28.insmod命令:載入模塊
29.isosize命令:顯示ISO9660文件系統信息
30.kbdconfig命令:設置鍵盤的類型
31.ldconfig命令:設置動態鏈接綁定
32.ldd命令:列印共享庫文件的相互依賴關系
33.lilo命令:引導安裝程序
34.liloconfig命令:設置程序的載入
35.losetup命令:設置循環設備
36.mev命令:監視滑鼠情況
37.minfo命令:顯示MS-DOS文件系統的各項參數
38.mkkickstart命令:建立安裝的組態文件
39.mkraid命令:初始化/升級RAID設備陣列
40.modinfo命令:顯示內核信息
41.modprobe命令:自動處理可載入的模塊
42.mouseconfig命令:設置滑鼠的相關參數
43.nice命令:設置優先權
44.passwd命令:設置密碼
45.pwconv命令:開啟用戶的投影密碼
46.pwunconv命令:關閉用戶的投影密碼
47.resize命令:設置終端視窗的大小
48.rpm命令:管理RPM包
49.runlevel命令:顯示執行等級
50.set命令:設置shell
51.setconsole命令:設置系統終端
52.setenv命令:查詢或顯示環境變數
53.setserial命令:設置或顯示串口的相關信息
54.setup命令:設置公用程序
55.sliplogin命令:將終端機之間的連接設為sliplogin連接
56.swapoff命令:關閉系統交換分區
57.swapon命令:啟動系統交換分區
58.sysctl命令:設置系統核心參數
59.telinit命令:設置系統的執行級別
60.timeconfig命令:設置時區
61.ulimit命令:控制shell程序的資源
62.unalias命令:刪除別名
63.unset命令:刪除變數或函數
64.vmstat命令:顯示虛擬內存的信息
65.yes命令:持續輸出給定的字元串,每行顯示一個字元串
第3章 磁碟的管理和維護命令
1.automount命令:為auto文件系統配置掛載點
2.badblocks命令:檢查磁碟壞道
3.cfdisk命令:磁碟分區
4.dd命令:轉換復制文件
5.df命令:顯示磁碟信息
6.dirs命令:顯示目錄信息
7.命令:顯示目錄或者文件所佔的磁碟空間
8.e2fsck命令:檢查ext2文件系統
9.mkbootdisk命令:建立當前系統的啟動盤
10.mke2fs命令:建立ext2文件系統
11.mkfs命令:建立各種文件系統
12.mkfs.minix命令:建立minix文件系統
13.mkinitrd命令:建立要載入ramdisk的映像文件
14.mkisofs命令:建立ISO9660映像文件
15.mkswap命令:設置交換分區
16.mt命令:磁帶驅動操作
17.mzip命令:zip/jaz磁碟驅動器控制命令
18.quota命令:顯示磁碟已使用的空間與限制
19.quotacheck命令:檢查磁碟的使用空間與限制
20.quotaoff命令:關閉磁碟空間與限制
21.quotaon命令:開啟磁碟空間限制
22.quotastats命令:顯示磁碟空間的限制
23.raidstop命令:關閉軟體控制的磁碟陣列
24.repquota命令:檢查磁碟空間限制的狀態
25.restore命令:還原mp操作備份的文件
26.rmt命令:遠程磁帶傳輸模塊
27.sfdisk命令:硬碟分區工具程序
28.sync命令:將內存緩沖區的數據寫入磁碟
第4章 文本編輯命令
1.awk命令:模式匹配語言
2.col命令:過濾控制字元
3.colrm命令:刪除制定的列
4.comm命令:比較排序文件
5.ed命令:文本編輯器
6.egrep命令:輸出某種匹配的行
7.ext2ed命令:ext2文件系統編輯
8.fgrep命令:匹配字元串
9.fmt命令:編排文本文件
10.gedit命令:gnome的文本編輯器
11.head命令:輸出文件開頭的部分信息
12.ispell命令:拼字檢查程序
13.jed命令:編輯文本文件
14.joe命令:編輯文本文件
15.join命令:將兩個文件中與指定欄位內容相同的行連接起來
16.less命令:一次顯示一頁文本
17.more命令:顯示文本信息
18.nano命令:文本編輯器
19.pg命令:瀏覽文件
20.pico命令:
21.sed命令:利用script命令處理文本文件
22.sort命令:將文本文件內容加以排序
23.spell命令:拼字檢查程序
24.tr命令:轉換文件中的字元
25.uniq命令:檢查文件中重復出現的行
26.vi命令:文字編輯器
27.vim命令:增強型vi編輯器
28.view命令:文字編輯器
29.wc命令:計算字數
第5章 文件傳輸命令
1.bye命令:終端FTP連接
2.fold命令:限制文件的列寬
3.ftp命令:文件傳輸協議
4.ftpcount命令:顯示FTP用戶登錄數
5.ftpshut命令:定時關閉FTP伺服器
6.ftpwho命令:顯示FTP登錄用戶信息
7.ncftp命令:傳輸文件
8.ncftpget命令:下載文件
9.ncftpls命令:顯示文件目錄
10.ncftpput命令:上傳文件
11.tftp命令:傳輸文件
12.uucico命令:UUCP文件傳輸
13.uucp命令:在Linux系統之間傳輸文件
14.uupick命令:處理文件
15.uuto命令:文件傳輸到遠程主機
第6章 文件管理命令
1.aspell命令:檢查文件的錯誤
2.attr命令:XFS文件系統對象的擴展屬性
3.basename命令:顯示文本或者目錄的基本名稱
4.chattr命令:改變文件的屬性
5.chgrp命令:改變文件或者目錄所屬的群組
6.chmod命令:設置文件或者目錄的許可權
7.chown命令:改變文件的擁有者或群組
8.cksum命令:文件的CRC校驗(該命令第一本沒有)
9.cmp命令:比較文件的差異
10.cp命令:復制
11.csplit命令:分割文件
12.diff命令:生成差異信息
13.diffstat命令:diff結果的統計信息
14.dirname命令:顯示文件的除名字外的路徑
15.file命令:識別文件的類型
16.filterdiff命令:從diff文件中提取不同
17.find命令:查找文件或目錄
18.findfs命令:通過列表或用戶ID查找文件系統
19.git命令:在文字模式下管理文件
20.indent命令:調整C原始代碼文件的格式
21.ln命令:鏈接文件或目錄
22.lndir命令:連接目錄的內容
23.locate命令:查找文件
24.lsattr命令:顯示文件屬性
25.mattrib命令:變更或顯示MS-DOS文件的屬性
26.mc命令:互動式文件管理程序
27.m命令:復制MS-DOS文件到Linux,或者將Linux文件復制到MS-DOS
28.md5sum命令:檢查文件
29.mdel命令:MS-DOS文件刪除
30.mdir命令:顯示MS-DOS文件的目錄
31.mkdir命令:建立目錄
32.mktemp命令:建立暫存文件
33.mmove命令:移動MS-DOS文件
34.mread命令:復制MS-DOS文件
35.mren命令:更改MS-DOS文件
36.mshowfat命令:顯示MS-DOS文件的記錄
37.mtools命令:顯示mtools支持的命令
38.mtoolstest命令:測試並顯示mtools的相關設置
39.mv命令:移動或更改現有的文件或目錄
40.od命令:輸出文件內容
41.paste命令:合並文件的列
42.patch命令:修補文件
43.rcp命令:復制遠程主機的文件或目錄
44.rhmask命令:產生加密文件
45.rm命令:刪除文件或目錄
46.rmdir命令:刪除目錄
47.scp命令:遠程復制文件
48.slocate命令:查找文件或目錄
49.split命令:切割文件
50.stat命令:顯示inode內容
51.sum命令:計算文件的校驗碼
52.tee命令:從標准輸入讀取並輸出到標准輸出和文件
53.tmpwatch命令:刪除暫存文件
54.touch命令:更新文件或目錄的時間
55.tree命令:以樹狀結構顯示目錄的內容
56.umask命令:指定在建立文件時預設的許可權掩碼
第7章 文件備份及壓縮命令
1.ar命令:建立、修改或從檔案文件中提取文件
2.bunzip2命令:解壓縮.bz2類型的文件
3.bzip2命令:解壓縮.bz2類型的文件
4.bzip2recover命令:對損壞的.bz2文件進行修復
5.compress命令:壓縮文件
6.cpio命令:備份文件
7.mp命令:文件系統備份
8.fdisk命令:Linux分區控製表
9.fsck命令:檢查文件系統並嘗試修復錯誤
10.fsck.ext2命令:檢查ext2文件系統
11.fsck.ext3命令:檢查ext3文件系統
12.fsck.minix命令:檢查minix文件系統並嘗試修復錯誤
13.gunzip命令:解壓縮文件
14.gzexe命令:壓縮可執行文件
15.gzip命令:壓縮文件
16.hdparm命令:顯示和設定磁碟參數
17.lha命令:壓縮或解壓縮文件
18.tar命令:壓縮/解壓縮文件
19.umount命令:卸載文件系統
20.unarj命令:解壓縮.arj文件
21.uncompress命令:解壓縮.z文件
22.unzip命令:解壓縮zip文件
23.zip命令:壓縮文件
24.zipinfo命令:顯示壓縮文件的信息
第8章 網路通信及管理命令
第9章 程序編譯命令
第10章 列印作業命令
第11章 電子郵件及新聞組命令
第12章 格式轉換命令
第13章 系統軟體工具
Ⅹ linux命令主要有哪幾種
文件管理命令
cat chattr chgrp chmod chown cksum cmp
diff diffstat file find git gitview indent
cut ln less locate isattr mattrib mc
mdel mdir mktemp more mmove mread mren
mtools mtoolstest mv od paste patch rcp
rm slocate split tee tmpwatch touch umask
which cp in m mshowfat rhmask whereis
目錄磁碟管理命令
cd df dirs edquota eject
mcd mdeltree m mkdir mlabel mmd
mrd mzip pwd quota mount mmount
rmdir rmt stat tree umount ls
quotacheck quotaoff lndir repquota quotaon
文檔編輯命令
col colrm comm csplit ed egrep ex fgrep
fmt fold grep ispell jed joe join look
mtype pico rgrep sed sort spell tr expr
uniq wc
文件傳輸列印命令
lprm lpr lpq lpd bye ftp
uuto uupick uucp uucico tftp ncftp
ftpshut ftpwho ftpcount
磁碟維護命令
badblocks cfdisk dd e2fsck ext2ed
fsck fsck fsconf fdformat hdparm
mformat mkbootdisk mkdosfs mke2fs mkfs.ext2
mkfs.msdos mkinitrd mkisofts mkswap mpartition
swapon symlinks sync mbadblocks mkfs
fsck.ext2 fdisk losetup mkfs sfdisk
swapoff
網路通信命令
apachectl arpwatch dip getty mingetty uux
telnet uulog uustat ppp-off netconfig nc
httpd ifconfig minicom mesg dnsconf wall
netstat ping pppstats samba setserial talk
traceroute tty newaliases uuname netconf write
statserial efax pppsetup tcpmp ytalk cu
smbd testparm smbd smbclient shapecfg
系統管理命令
adser chfn useradd date exit finger
fwhois sleep suspend groupdel groupmod halt
kill last lastb login logname logout
ps nice procinfo top pstree reboot
rlogin rsh sliplogin screen shutdown rwho
sudo gitps swatch tload logrotate kill
uname chsh userconf userdel usermod vlock
who whoami whois newgrp renice su
skill w id free
系統設置命令
reset clear alias dircolors aumix bind
chroot clock crontab declare depmod dmesg
enable eval export pwunconv grpconv rpm
insmod kbdconfig lilo liloconfig lsmod minfo
set modprobe ntsysv moouseconfig passwd pwconv
rdate resize rmmod grpunconv modinfo time
setup sndconfig setenv setconsole timeconfig ulimit
unset chkconfig apmd hwclock mkkickstart fbset
unalias SVGAText Mode
備份壓縮命令
ar bunzip2 bzip2 bzip2recover gunzip unarj
compress cpio mp uuencode gzexe gzip
lha restore tar uudecode unzip zip
zipinfo
設備管理命令
setleds loadkeys rdev mpkeys MAKEDEV