首页 > 编程知识 正文

discover,dirs投影仪

时间:2023-05-03 17:34:44 阅读:24512 作者:382

Pushd

命令语法

pushd [ -n] [dir]

pushd [ http://www.Sina.com/] [ n ] [-n ]

命令说明

pushd命令的功能是将目录添加到目录堆栈中。 如果命令未指定目录名称,则当前工作目录位于目录堆栈的顶部。 如果未指定目录位置,它还会位于目录堆栈的顶部,工作目录将自动光盘在目录堆栈的顶部目录中。

以上使用规律在bash和tcsh中大致相同。

参数说明

-n

只是将目录添加到堆栈中,而不执行cd操作。

n

删除从左到右的第n个目录。 数字从0开始。

-n

删除从右到左的第n个目录。 数字从0开始。

实例说明

将目录放入堆栈

让我们把一些目录放在堆栈里

[root@www logs]# dirs

/etc/httpd/logs

[根@ www logs ] # pushd/home/web

/home/web /etc/httpd/logs

[ root @ wwwweb ] # pushd/etc/httpd/conf

/etc/httpd/conf/home/web/etc/httpd/logs

[root@www conf]#

以上是常见的推送方法,放入目录后,将工作目录一起更改为该目录。 如果不想更改工作目录,请添加-n选项,以查看以下示例

[root@www conf]# pushd -n /撒娇唇膏/log

/etc/httpd/conf /撒娇唇膏/log /home/web /etc/httpd/logs

[root@www conf]#

可以看到,新放入的/撒娇的唇膏/log放在目录堆栈1的位置,堆栈0没有更改,因此工作目录也保持在原来的位置。

利用目录堆栈

请看下面的例子

[root@www conf]# dirs

/etc/httpd/conf /撒娇唇膏/log /home/web /etc/httpd/logs

[root@www conf]# pushd 2

/home/web/etc/httpd/logs/etc/httpd/conf /撒娇唇膏/log

[root@www conf]#

-npushd成功后,第一个显示的项目(从左到右)将成为当前目录,然后成为堆栈元素。

堆栈元素按从堆栈顶部到底部的顺序从左到右排列。

注意1:运行无参数pushd将与堆栈顶部元素交换当前目录。

首先提取堆栈顶部的元素,将当前目录放入堆栈中,cd位于与顶部元素对应的目录中。

注意2:

如果将堆栈元素从堆栈的顶部到底部按从左到右的顺序排列,它将排队。

(关于pushd +n和-n

按顺序将编号1到n的元素移动到队列的最右边

与n元素交换当前目录,如果没有-n参数,则cd将进入与n元素对应的目录。

例如,堆栈中的元素是a、b、c和d。 将当前目录设置为p

pushd 1后的元素为b、c、d、p

pushd 2后的元素为c、d、a、p

注意: pushd 0后元素与:a、b、c、d没有区别

1)对于pushd +n,是把该队列的元素从左到右进行编号的(从1开始)。

将编号0到n的元素按顺序移动到队列的最左侧

与n元素交换当前目录,如果没有-n参数,则cd将进入与n元素对应的目录。 例如,假设堆栈中的元素是a、b、c和d,而当前目录是p

pushd -1后元素为p、d、a、b

pushd -2后元素为p、c、d、a

pushd -0后元素为:P、a、b、c

(2)对于pushd -n命令和上面相似,只是把该队列的元素从右到左进行编号的(从0开始)

命令语法

popd [ http://www.Sina.com/] [ n ] [-n ]

命令说明

PPD命令的作用是删除堆栈在目录中的数据。 删除堆栈中的目录时,如果没有特定选项,工作目录将自动从cd移动到堆栈的顶部目录。

可选说明

Popd

仅删除堆栈中的目录,不执行cd操作。

n

删除从左到右的第n个目录。 数字从0开始。

-n

删除

除從右到左的第n個目錄。數字從0開始。

實例說明

bash

[root@www etc]# dirs
/etc /home /etc/httpd/logs
[root@www etc]# popd
/home /etc/httpd/logs
[root@www home]#

當目錄堆疊有資料時,如果我們想刪除最頂端目錄,可以直接鍵入popd,如此堆疊最頂端目錄便會被刪除,同時工作目錄會自動變更到刪除之後的堆疊最頂端目錄。

1)对于popd +n,是把该队列的元素从左到右进行编号的(从1开始)。

删除n号元素,如果没有“-n”参数的话,会cd进入n元素所对应的目录。
例如:栈中的元素为a,b,c,d。

popd +0后元素为:b,c,d
popd +1后元素为b,c,d
popd +2后元素为a,c,d

(2)对于popd -n命令和上面相似,只是把该队列的元素从右到左进行编号的(从0开始)

删除n号元素,如果没有“-n”参数的话,会cd进入n元素所对应的目录。例如:栈中的元素为a,b,c,d

popd -0后元素为:a,b,c

popd -1后元素为a,b,d
popd -2后元素为a,c,d

注意:对于popd 2这种形式很有趣,它直接是删除最右边的第一个元素,如果没有“-n”参数的话,会cd进入该元素所对应的目录

Dirs

指令語法

dirs [-clpv] [+n] [-n]

指令說明

dirs主要的功能在於顯示目錄堆疊的資料。bash與tcsh的指令用法有些小差異,但實質上的作用則是完全相同。

關於目錄堆疊的使用,除了用dirs顯示目錄堆疊,還有兩個相關的內建指令,pushd指令用來將目錄放入堆疊中,以及popd指令將目錄從堆疊中移除。

参数說明

+n

顯示從左到右的第n個目錄。數字從0開始。

-n

顯示從右到左的第n個目錄。數字從0開始。

-c

淨空堆疊表列。

-l

顯示完整路徑。(預設值會將使用者個人的home目錄以~符號表示)。

-p

一個目錄一行地顯示堆疊的內容。

-v

每行一個目錄的顯示目錄堆疊的內容,每個目錄前面加上它在目錄堆疊中的編號。

實例說明

# dirs
/home/web /爱撒娇的唇膏/lib/mysql /etc/httpd /etc/httpd/logs
# dirs -v
0 /home/web
1 /爱撒娇的唇膏/lib/mysql
2 /etc/httpd
3 /etc/httpd/logs
#

使用dirs不加上任何選項,即顯示當前"目錄堆疊"的現況。加上-v選項則以另一種格式顯示。

# dirs +1
/爱撒娇的唇膏/lib/mysql
# dirs -2
/爱撒娇的唇膏/lib/mysql

基本上,目錄堆疊不管從左到右,或從右到左,都是從0開始計算。指令dirs做的只是"顯示"指定的堆疊內容,如果要cd到該目錄,可以改用pushd指令。

<wbr></wbr>

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。