假设一种情况,一个文件A存放在了第十层目录ten中,经过千辛万苦好不容易进入了ten,结果一不小心敲入了一个cd命令,看着光标在根目录下闪烁,是不是很无奈呢?难道要再千辛万苦的敲一堆路径重新进到ten目录?
不必这么麻烦,输入“cd -”,看看是不是回到刚才的路径呢?
注:“cd -”能完成当前目录和之前所在的目录之间的切换
另外一个方便路径切换的命令就是pushd,可以完成多个不同路径之间的切换.
如果我希望在/usr和/etc/ssh和/etc/rc.d和当前路径之间切换,则可以在命令行下输入:
pushd /usr
/usr ~
pushd /etc/ssh
/etc/ssh /usr ~
pushd /etc/rc.d
/etc/rc.d /etc/ssh /usr ~
pushd会自动把当前路径加入到可切换路径中。执行dirs,可以看到显示四个路径:
dirs
/etc/rc.d /etc/ssh /usr ~
输入pushd,既可以在前两个路径之间相互切换。
如果想切换到最后一个(栈底)路径时 pushd +2即可。
pushd
/etc/ssh /etc/rc.d /usr ~
pushd
/etc/rc.d /etc/ssh /usr ~
pushd +2
/usr ~ /etc/rc.d /etc/ssh
如果想清空这些路径,执行dirs -c即可。
dirs -c
dirs
/usr
如果你需要从堆栈中删除一个目录,键入popd,然后是目录名称,再按回车键
在Linux的多目录命令提示符中工作是一种痛苦的事情,但以下这些利用cd和pushd切换目录的技巧有助于你节省时间和精力 。
在Linux命令提示中,用cd命令来改变当前目录。这是cd命令的一些基本用法:
改变你的根路径,键入cd,按回车键。
进入一个子目录,键入cd,空格,然后是子路径名(例如:cd Documents),再按回车键。
进入当前目录的上一级目录,键入cd,空格,两个点,然后按回车键。
进入一个特定的目录,键入cd,空格,路径名(例如 cd /usr/local/lib),再按回车键。
为了确定你所在的目录,你可以键入pwd,按回车键,你将看到你所在的当前目录名称。
用pushd实现在不同目录间切换。
在命令行模式下,当你工作在不同目录中,你将发现你有很多时间都浪费在重复输入上。如果这些目录不在同一个根目录中,你不得不在转换时输入完整的路径名,这难免让人有些难以忍受。但你可以用以下的一个或两个步骤来避免所有多余的输入:用命令行解释器中的历史记录,或者用命令行函数pushd。
用命令行解释器中的历史记录的好处是只需按很少的键。在命令行中用向上的箭头来查找你用过的命令,直到你找到,然后按回车键。如果你所切换的两个目录在整个驱动器的'子目录结构中很接近,那用解释器中的历史记录可能是你最好的选择。
然而,如果你在两个截然不同的路径间转换的话,你可能很希望利用pushd这个函数,你可以用它创建一个目录堆栈(在内存中的一个列表)。
注释:缺省情况下,pushd函数可能不包括在你的Linux中;但它包涵在Red Hat和用Red Hat驱动的系统中。如果你的系统中没有pushd函数,你可以在ibiblio.org网站上下载相关的函数工具。
这里说一下怎么用pushd。假设你现在工作在/usr/share/fonts目录下。你需要对/usr/share/fonts做一些改动,你将频繁的在两个目录间切换。开始在一个目录下,用pushd函数切换到另一个目录。在我们的例子中,开始在/usr/share/fonts下,你键入pushd/opt/wonderword/fonts,然后按回车键。现在,你将在下一行看到堆栈中的内容:
/opt/wonderword/fonts /usr/share/fonts
正如你所看到的,当你键入pushd和一个路径名时,将自动产生一个堆栈,内容是你键入的目录名和你当前工作的目录名。在我们的例子中,你所键入的路径(/opt/wonderword/fonts)在堆栈的顶部。
快速返回上一级目录,你可以直接键入pushd,如果不跟路径名,你将返回到堆栈中前一个目录的上一层目录。
如果你需要从堆栈中删除一个目录,键入popd,然后是目录名称,再按回车键。想查看堆栈中目录列表,键入dirs,然后按回车键。popd和dirs命令也是常用函数中的一部分。
linux下修改主目录的方法:
第一,修改/etc/passwd文件 ;
第二,usermod命令;
具体方法:
第一种方法:vi /etc/passwd ;
找到要修改的用户那几行,修改掉即可,此方法建议慎用。
/etc/passwd文件格式 。
登录名:加密口令:数字用户ID:数字组ID:注释字段:起始目录:shell程序 。
用此方法修改了用户宿主目录后,会出现某些异常,如:
bash环境异常,需要将用户原宿主目录下的隐藏文件拷贝到更改后的宿主目录即可 。
cp /原宿主目录/.* /目标目录。
第二种:usermod ;
usermod -d /usr/newfolder -u uid -u后面一定要接uid啊,不是username 。
补充说明:usermod可用来修改用户帐号的各项设定。
rmdir 命令
功能:删除空目录。
语法:rmdir [选项] dir-name
说明:dir-name表示目录名。该命令从一个目录中删除一个或多个子目录项。需要 特别注意的是,一个目录被删除之前必须是空的。rm - r dir命令可代替 rmdir,但是有危险性。删除某目录时也必须具有对父目录的写权限。
命令中各选项的含义为:
- p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应 的信息。
cd 命令:
功能:改变工作目录。
语法:cd [directory];
说明:该命令将当前目录改变至directory所指定的目录。若没有指定directory, 则回到用户的主目录。为了改变到指定目录,用户必须拥有对指定目录的执行和读权限。
Linux目录的创建与删除命令基础知识:
功能:创建一个目录(类似MSDOS下的md命令)。
语法:mkdir [选项] dir-name
说明:该命令创建由dir-name命名的目录。要求创建目录的用户在当前目录中(dir-name的父目录中)具有写权限,并且dirname不能是当前目录中已有的目录或 文件名称。
命令中各选项的含义为:
- m 对新建目录设置存取权限。也可以用chmod命令设置。
- p 可以是一个路径名称。此时若路径中的某些目录尚不存在, 加上此选项后, 系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
rpm 包已设定好了安装路径。\x0d\x0a \x0d\x0a如果是源码包可以在编译安装时指定位置:\x0d\x0a[root@localhost /opt/soft/apr-1.4.6]#./configure --prefix=/usr/local/apr\x0d\x0a \x0d\x0a--prefix 指定安装位置欢迎分享,转载请注明来源:内存溢出
评论列表(0条)