導航:首頁 > 程序命令 > shell命令點

shell命令點

發布時間:2022-10-01 04:06:17

⑴ shell命令1

linux文件查找命令find,xargs詳述

總結:zhy2111314
來自:LinuxSir.Org
整理:北南南北
摘要: 本文是find 命令的詳細說明,可貴的是針對參數舉了很多的實例,大量的例證,讓初學者更為容易理解;本文是zhyfly兄貼在論壇中;我對本文進行了再次整理,為方便大家閱讀;

目錄

版權聲明
前言:關於find命令

一、find 命令格式

1、find命令的一般形式為;
2、find命令的參數;
3、find命令選項;
4、使用exec或ok來執行shell命令;

二、find命令的例子;

1、查找當前用戶主目錄下的所有文件;
2、為了在當前目錄中文件屬主具有讀、寫許可權,並且文件所屬組的用戶和其他用戶具有讀許可權的文件;
3、為了查找系統中所有文件長度為0的普通文件,並列出它們的完整路徑;
4、查找/var/logs目錄中更改時間在7日以前的普通文件,並在刪除之前詢問它們;
5、為了查找系統中所有屬於root組的文件;
6、find命令將刪除當目錄中訪問時間在7日以來、含有數字後綴的admin.log文件
7、為了查找當前文件系統中的所有目錄並排序;
8、為了查找系統中所有的rmt磁帶設備;

三、xargs
四、find 命令的參數;

1、使用name選項
2、用perm選項
3、忽略某個目錄
4、使用find查找文件的時候怎麼避開某個文件目錄
5、使用user和nouser選項
6、使用group和nogroup選項
7、按照更改時間或訪問時間等查找文件
8、查找比某個文件新或舊的文件
9、使用type選項
10、使用size選項
11、使用depth選項
12、使用mount選項

五、關於本文
六、相關文檔

+++++++++++++++++++++++++++++++++++++++++++++++++
正文
+++++++++++++++++++++++++++++++++++++++++++++++++

版權聲明

本文是zhyfly兄貼在LinuxSir.Org 的一個帖子而整理出來的,如果您對版權有疑問,請在本帖後面跟帖。謝謝;本文的HTML版本由北南南北整理;修改了整篇文檔的全形及說明文字中的單詞中每個字母空格的問題;為標題加了編號,方便大家閱讀;

前言:關於find命令

由於find具有強大的功能,所以它的選項也很多,其中大部分選項都值得我們花時間來了解一下。即使系統中含有網路文件系統( NFS),find命令在該文件系統中同樣有效,只你具有相應的許可權。

在運行一個非常消耗資源的find命令時,很多人都傾向於把它放在後台執行,因為遍歷一個大的文件系統可能會花費很長的時間(這里是指30G位元組以上的文件系統)。

一、find 命令格式

1、find命令的一般形式為;

find pathname -options [-print -exec -ok ...]

2、find命令的參數;

pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的文件輸出到標准輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式為'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。

3、find命令選項

-name

按照文件名查找文件。

-perm
按照文件許可權來查找文件。

-prune
使用這一選項可以使find命令不在當前指定的目錄中查找,如果同時使用-depth選項,那麼-prune將被find命令忽略。

-user
按照文件屬主來查找文件。

-group
按照文件所屬的組來查找文件。

-mtime -n +n
按照文件的更改時間來查找文件, - n表示文件更改時間距現在n天以內,+ n表示文件更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。

-nogroup
查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。

-nouser
查找無有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。
-newer file1 ! file2

查找更改時間比文件file1新但比文件file2舊的文件。
-type

查找某一類型的文件,諸如:

b - 塊設備文件。
d - 目錄。
c - 字元設備文件。
p - 管道文件。
l - 符號鏈接文件。
f - 普通文件。

-size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以位元組計。
-depth:在查找文件時,首先查找當前目錄中的文件,然後再在其子目錄中查找。
-fstype:查找位於某一類型文件系統中的文件,這些文件系統類型通常可以在配置文件/etc/fstab中找到,該配置文件中包含了本系統中有關文件系統的信息。

-mount:在查找文件時不跨越文件系統mount點。
-follow:如果find命令遇到符號鏈接文件,就跟蹤至鏈接所指向的文件。
-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設備中。

另外,下面三個的區別:
-amin n
查找系統中最後N分鍾訪問的文件

-atime n
查找系統中最後n*24小時訪問的文件

-cmin n
查找系統中最後N分鍾被改變文件狀態的文件

-ctime n
查找系統中最後n*24小時被改變文件狀態的文件

-mmin n
查找系統中最後N分鍾被改變文件數據的文件

-mtime n
查找系統中最後n*24小時被改變文件數據的文件

4、使用exec或ok來執行shell命令

使用find時,只要把想要的操作寫在一個文件里,就可以用exec來配合find查找,很方便的

在有些操作系統中只允許-exec選項執行諸如l s或ls -l這樣的命令。大多數用戶使用這一選項是為了查找舊文件並刪除它們。建議在真正執行rm命令刪除文件之前,最好先用ls命令看一下,確認它們是所要刪除的文件。

exec選項後面跟隨著所要執行的命令或腳本,然後是一對兒{ },一個空格和一個\,最後是一個分號。為了使用exec選項,必須要同時使用print選項。如果驗證一下find命令,會發現該命令只輸出從當前路徑起的相對路徑及文件名。

例如:為了用ls -l命令列出所匹配到的文件,可以把ls -l命令放在find命令的-exec選項中

# find . -type f -exec ls -l { } \;
-rw-r--r-- 1 root root 34928 2003-02-25 ./conf/httpd.conf
-rw-r--r-- 1 root root 12959 2003-02-25 ./conf/magic
-rw-r--r-- 1 root root 180 2003-02-25 ./conf.d/README

上面的例子中,find命令匹配到了當前目錄下的所有普通文件,並在-exec選項中使用ls -l命令將它們列出。
在/logs目錄中查找更改時間在5日以前的文件並刪除它們:

$ find logs -type f -mtime +5 -exec rm { } \;

記住:在shell中用任何方式刪除文件之前,應當先查看相應的文件,一定要小心!當使用諸如mv或rm命令時,可以使用-exec選項的安全模式。它將在對每個匹配到的文件進行操作之前提示你。

在下面的例子中, find命令在當前目錄中查找所有文件名以.LOG結尾、更改時間在5日以上的文件,並刪除它們,只不過在刪除之前先給出提示。

$ find . -name "*.conf" -mtime +5 -ok rm { } \;
< rm ... ./conf/httpd.conf > ? n

按y鍵刪除文件,按n鍵不刪除。

任何形式的命令都可以在-exec選項中使用。

在下面的例子中我們使用grep命令。find命令首先匹配所有文件名為「 passwd*」的文件,例如passwd、passwd.old、passwd.bak,然後執行grep命令看看在這些文件中是否存在一個sam用戶。

# find /etc -name "passwd*" -exec grep "sam" { } \;
sam:x:501:501::/usr/sam:/bin/bash

二、find命令的例子;

1、查找當前用戶主目錄下的所有文件:

下面兩種方法都可以使用

$ find $HOME -print
$ find ~ -print

2、讓當前目錄中文件屬主具有讀、寫許可權,並且文件所屬組的用戶和其他用戶具有讀許可權的文件;

$ find . -type f -perm 644 -exec ls -l { } \;

3、為了查找系統中所有文件長度為0的普通文件,並列出它們的完整路徑;

$ find / -type f -size 0 -exec ls -l { } \;

4、查找/var/logs目錄中更改時間在7日以前的普通文件,並在刪除之前詢問它們;

$ find /var/logs -type f -mtime +7 -ok rm { } \;

5、為了查找系統中所有屬於root組的文件;

$find . -group root -exec ls -l { } \;
-rw-r--r-- 1 root root 595 10月 31 01:09 ./fie1

6、find命令將刪除當目錄中訪問時間在7日以來、含有數字後綴的admin.log文件。

該命令只檢查三位數字,所以相應文件的後綴不要超過999。先建幾個admin.log*的文件 ,才能使用下面這個命令

$ find . -name "admin.log[0-9][0-9][0-9]" -atime -7 -ok
rm { } \;
< rm ... ./admin.log001 > ? n
< rm ... ./admin.log002 > ? n
< rm ... ./admin.log042 > ? n
< rm ... ./admin.log942 > ? n

7、為了查找當前文件系統中的所有目錄並排序;

$ find . -type d | sort

8、為了查找系統中所有的rmt磁帶設備;

$ find /dev/rmt -print

三、xargs

xargs - build and execute command lines from standard input

在使用find命令的-exec選項處理匹配到的文件時, find命令將所有匹配到的文件一起傳遞給exec執行。但有些系統對能夠傳遞給exec的命令長度有限制,這樣在find命令運行幾分鍾之後,就會出現溢出錯誤。錯誤信息通常是「參數列太長」或「參數列溢出」。這就是xargs命令的用處所在,特別是與find命令一起使用。

find命令把匹配到的文件傳遞給xargs命令,而xargs命令每次只獲取一部分文件而不是全部,不像-exec選項那樣。這樣它可以先處理最先獲取的一部分文件,然後是下一批,並如此繼續下去。

在有些系統中,使用-exec選項會為處理每一個匹配到的文件而發起一個相應的進程,並非將匹配到的文件全部作為參數一次執行;這樣在有些情況下就會出現進程過多,系統性能下降的問題,因而效率不高;

而使用xargs命令則只有一個進程。另外,在使用xargs命令時,究竟是一次獲取所有的參數,還是分批取得參數,以及每一次獲取參數的數目都會根據該命令的選項及系統內核中相應的可調參數來確定。

來看看xargs命令是如何同find命令一起使用的,並給出一些例子。

下面的例子查找系統中的每一個普通文件,然後使用xargs命令來測試它們分別屬於哪類文件

#find . -type f -print | xargs file
./.kde/Autostart/Autorun.desktop: UTF-8 Unicode English text
./.kde/Autostart/.directory: ISO-8859 text\
......

在整個系統中查找內存信息轉儲文件(core mp) ,然後把結果保存到/tmp/core.log 文件中:

$ find / -name "core" -print | xargs echo "" >/tmp/core.log

上面這個執行太慢,我改成在當前目錄下查找

#find . -name "file*" -print | xargs echo "" > /temp/core.log
# cat /temp/core.log
./file6

在當前目錄下查找所有用戶具有讀、寫和執行許可權的文件,並收回相應的寫許可權:

# ls -l
drwxrwxrwx 2 sam adm 4096 10月 30 20:14 file6
-rwxrwxrwx 2 sam adm 0 10月 31 01:01 http3.conf
-rwxrwxrwx 2 sam adm 0 10月 31 01:01 httpd.conf

# find . -perm -7 -print | xargs chmod o-w
# ls -l
drwxrwxr-x 2 sam adm 4096 10月 30 20:14 file6
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 http3.conf
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf

用grep命令在所有的普通文件中搜索hostname這個詞:

# find . -type f -print | xargs grep "hostname"
./httpd1.conf:# different IP addresses or hostnames and have them handled by the
./httpd1.conf:# VirtualHost: If you want to maintain multiple domains/hostnames
on your

用grep命令在當前目錄下的所有普通文件中搜索hostnames這個詞:

# find . -name \* -type f -print | xargs grep "hostnames"
./httpd1.conf:# different IP addresses or hostnames and have them handled by the
./httpd1.conf:# VirtualHost: If you want to maintain multiple domains/hostnames
on your

注意,在上面的例子中, \用來取消find命令中的*在shell中的特殊含義。

find命令配合使用exec和xargs可以使用戶對所匹配到的文件執行幾乎所有的命令。

四、find 命令的參數

下面是find一些常用參數的例子,有用到的時候查查就行了,像上面前幾個貼子,都用到了其中的的一些參數,也可以用man或查看論壇里其它貼子有find的命令手冊

1、使用name選項

文件名選項是find命令最常用的選項,要麼單獨使用該選項,要麼和其他選項一起使用。

可以使用某種文件名模式來匹配文件,記住要用引號將文件名模式引起來。

不管當前路徑是什麼,如果想要在自己的根目錄$HOME中查找文件名符合*.txt的文件,使用~作為 'pathname'參數,波浪號~代表了你的$HOME目錄。

$ find ~ -name "*.txt" -print

想要在當前目錄及子目錄中查找所有的『 *.txt』文件,可以用:

$ find . -name "*.txt" -print

想要的當前目錄及子目錄中查找文件名以一個大寫字母開頭的文件,可以用:

$ find . -name "[A-Z]*" -print

想要在/etc目錄中查找文件名以host開頭的文件,可以用:

$ find /etc -name "host*" -print

想要查找$HOME目錄中的文件,可以用:

$ find ~ -name "*" -print 或find . -print

要想讓系統高負荷運行,就從根目錄開始查找所有的文件。

$ find / -name "*" -print

如果想在當前目錄查找文件名以兩個小寫字母開頭,跟著是兩個數字,最後是.txt的文件,下面的命令就能夠返回名為ax37.txt的文件:

$find . -name "[a-z][a-z][0--9][0--9].txt" -print

2、用perm選項

按照文件許可權模式用-perm選項,按文件許可權模式來查找文件的話。最好使用八進制的許可權表示法。

如在當前目錄下查找文件許可權位為755的文件,即文件屬主可以讀、寫、執行,其他用戶可以讀、執行的文件,可以用:

$ find . -perm 755 -print

還有一種表達方法:在八進制數字前面要加一個橫杠-,表示都匹配,如-007就相當於777,-006相當於666

# ls -l
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 http3.conf
-rw-rw-rw- 1 sam adm 34890 10月 31 00:57 httpd1.conf
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf
drw-rw-rw- 2 gem group 4096 10月 26 19:48 sam
-rw-rw-rw- 1 root root 2792 10月 31 20:19 temp

# find . -perm 006
# find . -perm -006
./sam
./httpd1.conf
./temp

-perm mode:文件許可正好符合mode

-perm +mode:文件許可部分符合mode

-perm -mode: 文件許可完全符合mode

3、忽略某個目錄

如果在查找文件時希望忽略某個目錄,因為你知道那個目錄中沒有你所要查找的文件,那麼可以使用-prune選項來指出需要忽略的目錄。在使用-prune選項時要當心,因為如果你同時使用了-depth選項,那麼-prune選項就會被find命令忽略。

如果希望在/apps目錄下查找文件,但不希望在/apps/bin目錄下查找,可以用:

$ find /apps -path "/apps/bin" -prune -o -print

4、使用find查找文件的時候怎麼避開某個文件目錄

比如要在/usr/sam目錄下查找不在dir1子目錄之內的所有文件

find /usr/sam -path "/usr/sam/dir1" -prune -o -print

find [-path ..] [expression] 在路徑列表的後面的是表達式

-path "/usr/sam" -prune -o -print 是 -path "/usr/sam" -a -prune -o
-print 的簡寫表達式按順序求值, -a 和 -o 都是短路求值,與 shell 的 && 和 || 類似如果 -path "/usr/sam" 為真,則求值 -prune , -prune 返回真,與邏輯表達式為真;否則不求值 -prune,與邏輯表達式為假。如果 -path "/usr/sam" -a -prune 為假,則求值 -print ,-print返回真,或邏輯表達式為真;否則不求值 -print,或邏輯表達式為真。

這個表達式組合特例可以用偽碼寫為

if -path "/usr/sam" then
-prune
else
-print

避開多個文件夾

find /usr/sam \( -path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -print

圓括弧表示表達式的結合。
\ 表示引用,即指示 shell 不對後面的字元作特殊解釋,而留給 find 命令去解釋其意義。

查找某一確定文件,-name等選項加在-o 之後

#find /usr/sam \(-path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -name "temp" -print

5、使用user和nouser選項

按文件屬主查找文件,如在$HOME目錄中查找文件屬主為sam的文件,可以用:

$ find ~ -user sam -print

在/etc目錄下查找文件屬主為uucp的文件:

$ find /etc -user uucp -print

為了查找屬主帳戶已經被刪除的文件,可以使用-nouser選項。這樣就能夠找到那些屬主在/etc/passwd文件中沒有有效帳戶的文件。在使用-nouser選項時,不必給出用戶名; find命令能夠為你完成相應的工作。

例如,希望在/home目錄下查找所有的這類文件,可以用:
$ find /home -nouser -print

6、使用group和nogroup選項

就像user和nouser選項一樣,針對文件所屬於的用戶組, find命令也具有同樣的選項,為了在/apps目錄下查找屬於gem用戶組的文件,可以用:

$ find /apps -group gem -print

要查找沒有有效所屬用戶組的所有文件,可以使用nogroup選項。下面的find命令從文件系統的根目錄處查找這樣的文件

$ find / -nogroup-print

7、按照更改時間或訪問時間等查找文件

如果希望按照更改時間來查找文件,可以使用mtime,atime或ctime選項。如果系統突然沒有可用空間了,很有可能某一個文件的長度在此期間增長迅速,這時就可以用mtime選項來查找這樣的文件。

用減號-來限定更改時間在距今n日以內的文件,而用加號+來限定更改時間在距今n日以前的文件。

希望在系統根目錄下查找更改時間在5日以內的文件,可以用:

$ find / -mtime -5 -print

為了在/var/adm目錄下查找更改時間在3日以前的文件,可以用:

$ find /var/adm -mtime +3 -print

8、查找比某個文件新或舊的文件

如果希望查找更改時間比某個文件新但比另一個文件舊的所有文件,可以使用-newer選項。它的一般形式為:

newest_file_name ! oldest_file_name

其中,!是邏輯非符號。

查找更改時間比文件sam新但比文件temp舊的文件:

例:有兩個文件

-rw-r--r-- 1 sam adm 0 10月 31 01:07 fiel
-rw-rw-rw- 1 sam adm 34890 10月 31 00:57 httpd1.conf
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf
drw-rw-rw- 2 gem group 4096 10月 26 19:48 sam
-rw-rw-rw- 1 root root 2792 10月 31 20:19 temp

# find -newer httpd1.conf ! -newer temp -ls
1077669 0 -rwxrwxr-x 2 sam adm 0 10月 31 01:01 ./httpd.conf
1077671 4 -rw-rw-rw- 1 root root 2792 10月 31 20:19 ./temp
1077673 0 -rw-r--r-- 1 sam adm 0 10月 31 01:07 ./fiel

查找更改時間在比temp文件新的文件:

$ find . -newer temp -print

9、使用type選項

在/etc目錄下查找所有的目錄,可以用:

$ find /etc -type d -print

在當前目錄下查找除目錄以外的所有類型的文件,可以用:
$ find . ! -type d -print

在/etc目錄下查找所有的符號鏈接文件,可以用
$ find /etc -type l -print

10、使用size選項

可以按照文件長度來查找文件,這里所指的文件長度既可以用塊(block)來計量,也可以用位元組來計量。以位元組計量文件長度的表達形式為N c;以塊計量文件長度只用數字表示即可。

在按照文件長度查找文件時,一般使用這種以位元組表示的文件長度,在查看文件系統的大小,因為這時使用塊來計量更容易轉換。
在當前目錄下查找文件長度大於1 M位元組的文件:
$ find . -size +1000000c -print

在/home/apache目錄下查找文件長度恰好為100位元組的文件:

$ find /home/apache -size 100c -print

在當前目錄下查找長度超過10塊的文件(一塊等於512位元組):

$ find . -size +10 -print

11、使用depth選項

在使用find命令時,可能希望先匹配所有的文件,再在子目錄中查找。使用depth選項就可以使find命令這樣做。這樣做的一個原因就是,當在使用find命令向磁帶上備份文件系統時,希望首先備份所有的文件,其次再備份子目錄中的文件。

在下面的例子中, find命令從文件系統的根目錄開始,查找一個名為CON.FILE的文件。

它將首先匹配所有的文件然後再進入子目錄中查找。

$ find / -name "CON.FILE" -depth -print

12、使用mount選項

在當前的文件系統中查找文件(不進入其他文件系統),可以使用find命令的mount選項。

從當前目錄開始查找位於本文件系統中文件名以XC結尾的文件:

$ find . -name "*.XC" -mount -print

⑵ shell命令大全

http://www.runoob.com/linux/linux-command-manual.html
看下這個是否可以幫助到你

⑶ shell 總共有幾個命令

$SHELL是一個環境變數,它記錄用戶所使用的Shell類型。你可以用命令: # Shell-name 來轉換到別的Shell,這里Shell-name是你想要嘗試使用的Shell的名稱,如ash等。這個命令為用戶又啟動了一個Shell,這個Shell在最初登錄的那個Shell之後,稱為下級的Shell或子Shell。 使用命令: # exit 可以退出這個子Shell。使用不同的Shell的原因在於它們各自都有自己的特點,下面做一個簡單的介紹: 1.ash ash Shell是由Kenneth Almquist編寫的,是Linux中佔用系統資源最少的一個小Shell,它只包含24個內部命令,因而使用起來很不方便。 2.bash bash是Linux系統默認使用的Shell,它由Brian Fox和Chet Ramey共同完成,是Bourne Again Shell的縮寫,內部命令一共有40個。Linux使用它作為默認的Shell是因為它有以下的特色: (1)可以使用類似DOS下面的doskey的功能,用上下方向鍵查閱和快速輸入並修改命令。 (2)自動通過查找匹配的方式,給出以某字串開頭的命令。 (3)包含了自身的幫助功能,你只要在提示符下面鍵入help就可以得到相關的幫助。 3.ksh ksh是Korn Shell的縮寫,由Eric Gisin編寫,共有42條內部命令。該Shell最大的優點是幾乎和商業發行版的ksh完全相容,這樣就可以在不用花錢購買商業版本的情況下嘗試商業版本的性能了。 4.csh csh是Linux比較大的內核,它由以William Joy為代表的共計47位作者編成,共有52個內部命令。該Shell其實是指向/bin/tcsh這樣的一個Shell,也就是說,csh其實就是tcsh。 5.zch zch是Linux最大的Shell之一,由Paul Falstad完成,共有84個內部命令。如果只是一般的用途,是沒有必要安裝這樣的Shell的。Bourne Shell (/usr/old/bin/sh)
C Shell (/usr/bin/csh)
Korn Shell (/usr/bin/ksh)
POSIX Shell (/usr/bin/sh)
①輸入一個系統不認識的命令(如#fuck_pig)獲得系統提示
②#e cho $0 (適用:sh/ksh)
③#ps |grep $$|awk 『{print $4}』
④#e cho $SHELL(用戶默認的Shell,但不實時反映當前shell)還有在你的/etc/shells中你可以看到更多的shell:
# /etc/shells: valid login shells/bin/ash/bin/csh/bin/sh/usr/bin/es
/usr/bin/ksh/bin/ksh/usr/bin/rc
/usr/bin/tcsh/bin/tcsh/usr/bin/zsh/bin/sash/bin/zsh/usr/bin/esh/bin/dash/bin/bash/bin/rbash不同的 shell 有著不同的功能,且也彼此各異、或說"大同小異"。
常見的 shell 主要分為兩大主流:sh:burne shell (sh)

⑷ 什麼是Shell,它的作用是什麼

在計算機科學中,Shell俗稱殼(用來區別於核),是指「為使用者提供操作界面」的軟體(命令解析器)。它類似於DOS下的command.com和後來的cmd.exe。它接收用戶命令,然後調用相應的應用程序。

用途:使用用戶的預設憑證和環境執行 shell。

在UEFI環境下,EFI的Shell環境提供了一組豐富的擴展和增強的命令,在以後的計算機中,傳統的DOS界面將會被SHELL環境所取代,所有的.exe文件將不會在以後支持SHELL的環境中出現,取而代之的文件後綴是.efi。在SHELL環境下,分為IA32和X64,32位的*.efi文件不能在X64的計算機中運行。

(4)shell命令點擴展閱讀

如果Shell函數成功地執行了所要執行的文件,則它會返回程序的任務 ID。任務 ID 是一個唯一的數值,用來指明正在運行的程序。如果Shell函數不能打開命名的程序,則會產生錯誤。

預設情況下,Shell函數是以非同步方式來執行其它程序的。也就是說,用Shell啟動的程序可能還沒有完成執行過程,就已經執行到Shell函數之後的語句。

⑸ 什麼是shell

Shell俗稱殼,它提供了用戶與內核進行交互操作的一種介面,它接收用戶輸入的命令並把它送入內核去執行

Shell實際上是一個命令解釋器,它通過解釋用戶輸入的命令並把它傳輸給系統內核去執行。

Shell有自己的編程語言,它允許用戶編寫由shell命令組成的程序。Shell編程語言具有普通編程語言的很多特點,比如它也有循環結構和分支控制結構等。

⑹ 如何運行shell命令

1、shell的內建命令,用戶可以直接輸入命令名稱執行。比如pwd、cd等命令。用戶可以通過type命令來判斷命令是內建命令還是外部命令。

⑺ linux常用的shell有哪些

Linux系統的shell作為操作系統的外殼,為用戶提供使用操作系統的介面。它是命令語言、命令解釋程序及程序設計語言。

shell是用戶和Linux內核之間的介面程序,如果把Linux內核想像成一個球體的中心,shell就是圍繞內核的外層。當從shell或其他程序向Linux傳遞命令時,內核會做出相應的反應。

shell是一個命令語言解釋器,它擁有自己內建的shell命令集,shell也能被系統中的其他應用程序所調用。用戶在提示符下輸入的命令都由shell先解釋然後傳給Linux核心。

Linux常用的shell有哪些?

1、Bourne shell

Bourne shell是一個交換式的命令解釋器和命令編程語言。

Bourne shell是標準的UNIX shell,以前常被用來做為管理系統之用。大部分的系統管理命令文件,例如rcstart、stop與shutdown都是Bourne shell的命令檔,且在單一使用者模式下以root簽入時它常被系統管理者使用。Bourneshell是由AT$T發展的,以簡潔、快速著名,Bourne shell提示符號的默認值是$。

2、C shell

C shell是一種比Bourneshell更適合的變種shell,使用的是類C語言,csh是具有C語言風格的一種shell,其內部命令有52個,比較龐大。

C shell是柏克萊大學所開發的,且加入了一些新特性,如命令列歷程、別名、內建算術、檔名完成和工作控制。對於常在交談模式下執行shell的使用者而言,他們較喜歡用C
shell;但對於系統管理者而言,則較偏好以Bourne shell來做命令檔,因為Bourne shell命令檔比C shell命令檔來的簡單及快速。C shell提示符號的默認值是%。

3、korn shell

korn shell是一個Unix shell,它由貝爾實驗室的David Korn在二十世紀八十年代早期編寫。它完全向上兼容Bourne shell並包含了c shell的很多特性,例如貝爾實驗室用戶需要的命令編輯。

Korn shell是Bourne shell的超集,由AT&T的David korn所開發。它增加了一些特色,比C shell更為先進。Korn shell的特色包括了可編輯的歷程、別名、函式、正則表達式萬用字元、內建算術、工作控制、共作處理和特殊的除錯功能。Korn shell提示符號的默認值也是$。

⑻ shell命令是什麼

shell不是一個程序.他大意是指對系統的操控權,一個操控介面,
shell的概念是從Unix繼承下來的
shell是分等級的,所以就有了提升許可權的概念
Shell就是一個命令行解釋器,它的作用就是遵循一定的語法將輸入的命令加以解釋並傳給系統。它為用戶提供了一個向Linux發送請求以便運行程序的介面系統級程序,用戶可以用Shell來啟動、掛起、停止甚至是編寫一些程序。現在延伸進WINDOWS。

在VB中Shell函數用以執行一個可執行文件,返回一個 Variant (Double),如果成功的話,代表這個程序的任務 ID,若不成功,則會返回 0。
語法
Shell(pathname[,windowstyle])
Shell 函數的語法含有下面這些命名參數:
部分 描述
pathname 必要參數。Variant (String),要執行的程序名,以及任何必需的參數或命令行變數,可能還包括目錄或文件夾,以及驅動器。
Windowstyle 可選參數。Variant (Integer),表示在程序運行時窗口的樣式。如果 windowstyle 省略,則程序是以具有焦點的最小化窗口來執行的。
windowstyle 命名參數有以下這些值:
常量 值 描述
vbHide 0 窗口被隱藏,且焦點會移到隱式窗口。
VbNormalFocus 1 窗口具有焦點,且會還原到它原來的大小和位置。
VbMinimizedFocus 2 窗口會以一個具有焦點的圖標來顯示。
VbMaximizedFocus 3 窗口是一個具有焦點的最大化窗口。
VbNormalNoFocus 4 窗口會被還原到最近使用的大小和位置,而當前活動的窗口仍然保持活動。
VbMinimizedNoFocus 6 窗口會以一個圖標來顯示。而當前活動的的窗口仍然保持活動。
說明
如果 Shell 函數成功地執行了所要執行的文件,則它會返回程序的任務 ID。任務 ID 是一個唯一的數值,用來指明正在運行的程序。如果 Shell 函數不能打開命名的程序,則會產生錯誤。

注意 預設情況下,Shell 函數是以非同步方式來執行其它程序的。也就是說,用 Shell 啟動的程序可能還沒有完成執行過程,就已經執行到 Shell 函數之後的語句。
2.Shell 函數示例
本示例使用 Shell 函數來完成一個用戶指定的應用程序。

' 將第二個參數值設成 1,可讓該程序以正常大小的窗口完成,並且擁有焦點。
Dim RetVal
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' 完成Calculator。

⑼ Xshell本地指令大全

很多軟體在使用過程中都有快捷鍵,當然xshell也有,有因為xshell是一款 安全終端模擬軟體 ,所以與普通的軟體有絲絲的區別,它的快捷鍵是以指令形式展現的。

圖1:xshell本地指令表現形式

一般來講,Xshell提示在未連接遠程主機的狀態下出現在終端屏幕上。連接會話後可按「Ctrl+Alt+]」以轉出本地提示。如要返回到遠程主機模式輸入「exit」或按「Ctrl+D」即可。

可使用如下指令:

|

指令

|

說明

|
| --- | --- |
|

help

?

|

在終端窗口顯示指令目錄。

|
|

new

|

打開新建會話屬性對話框。

|
|

open [ session ]

|

已指定「 session 」時連接到相應會話,未指定時打開會話對話框。

|
|

edit [ session ]

|

已指定「 session 」時打開相應會話的會話屬性對話框,未指定時打開默認會話的會話屬性對話框。

|
|

list

|

顯示當前作業directory可使用的會話相關信息和directory目錄。

|
|

cd

|

更改當前作業的directory。

|
|

clear

|

清除畫面、地址欄的歷史記錄、本地Shell命令提示的命令歷史記錄。

|
|

exit

quit

|

退出Xshell會話或返回到遠程主機。

|
|

ssh [ user @] host [ port ]

|

以ssh協議進行連接。

|
|

sftp [ user @] host [ port ]

|

以sftp協議進行連接。

|
|

telnet [ user @] host [ port ]

|

以telnet協議進行連接。

|
|

rlogin [ user @] host [ port ]

|

以rlogin協議進行連接。

|
|

ftp [ user @] host [ port ]

|

以ftp協議進行連接。

|
|

ipconfig

|

執行Windows的ipconfig命令。

|
|

ping host

|

執行Windows的ping命令。

|
|

tracert host

|

顯示至host的數據包路徑。

|
|

netstat

|

執行Windows의netstat命令。

|
|

nslookup

|

執行Windows의 nslookup 命令。

|

⑽ shell命令

windows文本文檔與linux文本文檔主要的區別是斷行符不同。
可以使用cat -A 查看文檔是windows文檔還是linux文檔。windows文檔顯示的斷行符為^M$,而linux(unix)文檔斷行符為$。
可以使用dos2unix和unix2dos進行格式轉換。
假設目前有一個windows文檔file1.txt,轉換為linux文檔,命令為:dos2unix -n file1.txt file2.txt,注意-n參數是保留舊文檔,同時輸出到新文檔。
unix2dos用法與dos2unix用法類似。

閱讀全文

與shell命令點相關的資料

熱點內容
怎麼做軟綿綿解壓筆 瀏覽:698
壓縮包網路傳輸會丟色嗎 瀏覽:220
x79伺服器主板用什麼內存條 瀏覽:441
小程序編譯器源碼 瀏覽:66
程序員降薪么 瀏覽:201
u盤內部分文件夾不顯示 瀏覽:396
手機上pdf怎麼加密碼 瀏覽:1001
51單片機hex文件 瀏覽:329
vsc怎麼編譯bin 瀏覽:6
安卓基站延遲怎麼辦 瀏覽:544
亞馬遜店鋪可以遷移到雲伺服器嗎 瀏覽:841
真空泵壓縮比會改變嗎 瀏覽:330
示波器app怎麼看 瀏覽:613
米家app英文怎麼改 瀏覽:606
學習編程你有什麼夢想 瀏覽:887
農行信用報告解壓密碼 瀏覽:218
小程序員調試信息 瀏覽:184
電腦打代碼自帶編譯嗎 瀏覽:274
和平怎麼在和平營地轉安卓 瀏覽:464
我的世界中如何查看伺服器的人數 瀏覽:619