当前位置: 技术问答>linux和unix
简单的linux命令问题
来源: 互联网 发布时间:2015-06-15
本文导语: 刚被通知服务器red hat 上有二块硬盘, 我现在用root上去了,要把/usr/下的文件备分到另一个硬盘上,我不知道如何找另一个硬盘,请大侠们快来帮手呀 | 你的服务器使用的硬盘时什么类型的...
刚被通知服务器red hat 上有二块硬盘,
我现在用root上去了,要把/usr/下的文件备分到另一个硬盘上,我不知道如何找另一个硬盘,请大侠们快来帮手呀
我现在用root上去了,要把/usr/下的文件备分到另一个硬盘上,我不知道如何找另一个硬盘,请大侠们快来帮手呀
|
你的服务器使用的硬盘时什么类型的,如何进行电缆连接??
让我们猜谜啊?
让我们猜谜啊?
|
/mnt/hdb就是你的第二塊硬盤
|
scsi /dev/sda
|
Linux基础___从命令行开始!
尽管Red Hat Linux中有几个集成GUI工具,但是控制Linux最好成的方法还是使用命令行界面.因为命令行界面比GUI工具有更多选择.又由于没有GNOME和KDE之类的桌面的开销,速度也更快. Linux社区仍然对命令行情有独钟(这就好比有个人说的那样,他说现在人们都在使用.NET和JAVA的开发平台,桌面环境大家都熟悉了,可是对于DOS下的命令,以及手写代码却并不感冒了,而真正的高手是不屑于这样的).所以想真正学好Linux,则一定要知道命令行界面的用法! (说明: Linux是大小写相关的.)
一 搜索导航命令
pwd
pwd命令表示当前工作目录.在命令行界面输入这个命令后,就可以看到当前目录的绝对路径.例如:
# pwd
/etc/httpd/conf
这个表示当前目录为/etc/httpd/conf,这是Apache配置文件的默认地址.
cd
. cd命令改变目录.就跟MS-DOS中的.cd似的.(但千万不要以为跟它是同样的用法)
cd .. 上移一层目录.例如,当前在/home/mj目录,则移到/home/
cd../. 上移两层例如当前在/etc/rc.d/rc0.d目录,则移到/etc目录
cd /home/mj 移到用户mj的目录
cd- 移到自己的主目录,适用于任何用户
ls
ls 按字母顺序列出当前目录中所有非隐藏的文件
ls-a 按字母顺序列出当前目录中所有的文件,包括隐藏文件
ls-r 按字母逆序列出当前目录中所有非隐藏的文件
ls-F 按类型列出所有文件,每个文件末尾的字符表示类型.例如,斜杠(/)表示目录,
星号(*)表示可执行文件,@号表示链接文件
ls-I 列出带inode的文件. Inode编号表示文件在卷中的地址.具有相同inode编号的两个或多个文件是同一文件的不同名称.
ls-l 列出当前目录中的所有文件,包括当前目录(.)和父目录(..),包括长度,拥有者和权限,称为长列表格式.
ls-t 按文件最后修改时间列出文件,最新的文件放在前面.
ls-y 按文件最后访问时间列出文件,最新的文件放在前面
二 路径管理
描述文件位置时,可以指定相对或绝对路径.例如,可以输入下列命令,取得启动几个Linux监控程序的脚本:
# cd /etc/rc.d/init.d
第一个目录前的正斜杠表示是个绝对路径.可以从Linux中任何地方输入这个命令,进入这个目录.有时输入的命令没有正斜杠:
# cd etc/rc.d/init.d
这时Linux会在你的主目录中寻找这些目录,例如,如果你的主目录为home/mj,则Linux会寻找/home/mj/etc/rc.d/init.d目录.除非把这些文件放在住目录的深层中,否则Linux什么也找不到.
相对与绝对路径还适用于其它命令.例如,可以用下面命令列出/etc/rc.d/init.d目录中的监控程序:
# ls /etc/rc.d/init.d
但是,如果使用相对路径,则当前目录很重要.例如,如果 pwd命令的输出为/home/mj,则下列命令是行不通的(除非有个/home/mj/etc/rc.d/init.d):
# ls etc/rc.d/init.d
三 建立文件与目录
touch
1. touch /home/aquota.user /home/ aquota.group(在/home目录中生成aquota.user和 aquota.group空文件.
2. # touch /root/f0601.tif (把文件的最后访问时间变成当前时间,假设当前时间是3月30日13时20分,则运行了这个命令后,对f0601.tif文件运行ls-l命令后,可以看到下列输出:
-rw-r--r-- 1 root root 883823 March 30 13:20 f0601.tif
cp
cp file1 file2 将文件1复制到文件2中,目标得到新的生成日期和inode编号
cp file* Dir1 将多个文件复制到一个目录
cp –f file1 file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示
cp –i file1 file2 如果文件2已经存在,则这个命令覆盖其内容时会先发出提示
cp –p file1 file2 将文件1内容复制到文件2中,目标文件保持原有的生成日期和inode编号
cp –r Dir1 Dir2 将目录1及其子目录内容复制到目录2中.如果是递归的,换句话说,如果目录1的子目录中还有子目录,则也复制其中的文件和目录.
cp –u file1 file2 如果文件2存在,但文件1更新,则这个命令覆盖其内容时不发出提示.
说明: inode是每个linux分区中对文件使用的标识符.每个文件有一个inode,
inode包括文件的元素据,包括权限、长度、最后访问时间和文件所在的磁盘块。如果inode搞乱或搞错,则Linux无法找到相关的文件。此外,同一文件具有相同的inode号。但是由于不同分区不可能有相同的inode号,因此从一个分区向另一个分区复制文件时,不能使用cp –p file1 file2命令。
mv
mv file1 file2 将文件名从file1改成file2。如果源与目标文件在同一卷中,则文件的inode号不变。
mv file* Dir1 将多个文件移动到一个目录
mv –f file1 file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示。
mv –i file1 file2 如果文件2已经存在,则这个命令覆盖其内容时发出提示
提示:有些Linux用户生成的文件名为小写字母,而目录以大写字母开头。这是不必要的规则,标准linux目录以小写字母开头,如/bin.
rm
说明:删除文件与目录。如同MS-DOS的删除命令,有时我们很小的一点失误就可能删除所有Linux文件,所以我建议只在必要的时候才在根用户或超级用户方式下运行Linux。如:
rm –r *.tmp ,结果我们输入的是:rm –r * .tmp ,由于星号与.tmp之间有一个空格,使shell认为要递归删除所有目录,然后删除.tmp文件,结果肯定是可以想象的了。为此,红帽子公司将下列别名配置为根用户的别名:alias rm=’rm –i’ ,这个别名保证用rm –r删除文件时,shell先提示。
rm file1 删除文件1而不提示确认,但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
rm –d Dir1 删除目录1而不提示确认,但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
rm –i file1 提示用户确认之后再删除
rm –f file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示,甚至覆盖alias rm=’rm –i’
rm –r 递归删除文件,如果当前目录中还有子目录,则也删除其中的目录和文件。但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
ln
说明:链接文件
比如:如果你和同事都在使用文件project,则可以在主目录中生成一个链接文,比
如我和同事都在使用文件project,则可以在主目录中生成一个链接文件:
# ln /home/jm/project /home/mj/project (文件在/home/jm中,,生成了mj主目录中文件的链接)。使用其中一个文件时,改变和结果可以从两个目录中显示和访问.这也叫硬“硬链接”,这时两个文件的inode是一样的,如果删除原文件,则硬链接文件保留。
# ln –s /home/jm/project /home/mj/project (运行这个命令则可以在文件的长列表__ls –l 中看到链接文件,这叫“软链接”,如果删除原来的文件,则软链接指向空文件,原文件中的信息丢失)
备注:ln file1 file2 命令与cp –p file1 file2得到的结果一致。除非文件位于不同分区,否则文件1与文件2保持相同的inode号!
尽管Red Hat Linux中有几个集成GUI工具,但是控制Linux最好成的方法还是使用命令行界面.因为命令行界面比GUI工具有更多选择.又由于没有GNOME和KDE之类的桌面的开销,速度也更快. Linux社区仍然对命令行情有独钟(这就好比有个人说的那样,他说现在人们都在使用.NET和JAVA的开发平台,桌面环境大家都熟悉了,可是对于DOS下的命令,以及手写代码却并不感冒了,而真正的高手是不屑于这样的).所以想真正学好Linux,则一定要知道命令行界面的用法! (说明: Linux是大小写相关的.)
一 搜索导航命令
pwd
pwd命令表示当前工作目录.在命令行界面输入这个命令后,就可以看到当前目录的绝对路径.例如:
# pwd
/etc/httpd/conf
这个表示当前目录为/etc/httpd/conf,这是Apache配置文件的默认地址.
cd
. cd命令改变目录.就跟MS-DOS中的.cd似的.(但千万不要以为跟它是同样的用法)
cd .. 上移一层目录.例如,当前在/home/mj目录,则移到/home/
cd../. 上移两层例如当前在/etc/rc.d/rc0.d目录,则移到/etc目录
cd /home/mj 移到用户mj的目录
cd- 移到自己的主目录,适用于任何用户
ls
ls 按字母顺序列出当前目录中所有非隐藏的文件
ls-a 按字母顺序列出当前目录中所有的文件,包括隐藏文件
ls-r 按字母逆序列出当前目录中所有非隐藏的文件
ls-F 按类型列出所有文件,每个文件末尾的字符表示类型.例如,斜杠(/)表示目录,
星号(*)表示可执行文件,@号表示链接文件
ls-I 列出带inode的文件. Inode编号表示文件在卷中的地址.具有相同inode编号的两个或多个文件是同一文件的不同名称.
ls-l 列出当前目录中的所有文件,包括当前目录(.)和父目录(..),包括长度,拥有者和权限,称为长列表格式.
ls-t 按文件最后修改时间列出文件,最新的文件放在前面.
ls-y 按文件最后访问时间列出文件,最新的文件放在前面
二 路径管理
描述文件位置时,可以指定相对或绝对路径.例如,可以输入下列命令,取得启动几个Linux监控程序的脚本:
# cd /etc/rc.d/init.d
第一个目录前的正斜杠表示是个绝对路径.可以从Linux中任何地方输入这个命令,进入这个目录.有时输入的命令没有正斜杠:
# cd etc/rc.d/init.d
这时Linux会在你的主目录中寻找这些目录,例如,如果你的主目录为home/mj,则Linux会寻找/home/mj/etc/rc.d/init.d目录.除非把这些文件放在住目录的深层中,否则Linux什么也找不到.
相对与绝对路径还适用于其它命令.例如,可以用下面命令列出/etc/rc.d/init.d目录中的监控程序:
# ls /etc/rc.d/init.d
但是,如果使用相对路径,则当前目录很重要.例如,如果 pwd命令的输出为/home/mj,则下列命令是行不通的(除非有个/home/mj/etc/rc.d/init.d):
# ls etc/rc.d/init.d
三 建立文件与目录
touch
1. touch /home/aquota.user /home/ aquota.group(在/home目录中生成aquota.user和 aquota.group空文件.
2. # touch /root/f0601.tif (把文件的最后访问时间变成当前时间,假设当前时间是3月30日13时20分,则运行了这个命令后,对f0601.tif文件运行ls-l命令后,可以看到下列输出:
-rw-r--r-- 1 root root 883823 March 30 13:20 f0601.tif
cp
cp file1 file2 将文件1复制到文件2中,目标得到新的生成日期和inode编号
cp file* Dir1 将多个文件复制到一个目录
cp –f file1 file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示
cp –i file1 file2 如果文件2已经存在,则这个命令覆盖其内容时会先发出提示
cp –p file1 file2 将文件1内容复制到文件2中,目标文件保持原有的生成日期和inode编号
cp –r Dir1 Dir2 将目录1及其子目录内容复制到目录2中.如果是递归的,换句话说,如果目录1的子目录中还有子目录,则也复制其中的文件和目录.
cp –u file1 file2 如果文件2存在,但文件1更新,则这个命令覆盖其内容时不发出提示.
说明: inode是每个linux分区中对文件使用的标识符.每个文件有一个inode,
inode包括文件的元素据,包括权限、长度、最后访问时间和文件所在的磁盘块。如果inode搞乱或搞错,则Linux无法找到相关的文件。此外,同一文件具有相同的inode号。但是由于不同分区不可能有相同的inode号,因此从一个分区向另一个分区复制文件时,不能使用cp –p file1 file2命令。
mv
mv file1 file2 将文件名从file1改成file2。如果源与目标文件在同一卷中,则文件的inode号不变。
mv file* Dir1 将多个文件移动到一个目录
mv –f file1 file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示。
mv –i file1 file2 如果文件2已经存在,则这个命令覆盖其内容时发出提示
提示:有些Linux用户生成的文件名为小写字母,而目录以大写字母开头。这是不必要的规则,标准linux目录以小写字母开头,如/bin.
rm
说明:删除文件与目录。如同MS-DOS的删除命令,有时我们很小的一点失误就可能删除所有Linux文件,所以我建议只在必要的时候才在根用户或超级用户方式下运行Linux。如:
rm –r *.tmp ,结果我们输入的是:rm –r * .tmp ,由于星号与.tmp之间有一个空格,使shell认为要递归删除所有目录,然后删除.tmp文件,结果肯定是可以想象的了。为此,红帽子公司将下列别名配置为根用户的别名:alias rm=’rm –i’ ,这个别名保证用rm –r删除文件时,shell先提示。
rm file1 删除文件1而不提示确认,但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
rm –d Dir1 删除目录1而不提示确认,但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
rm –i file1 提示用户确认之后再删除
rm –f file2 如果文件2已经存在,则这个命令覆盖其内容时不发出提示,甚至覆盖alias rm=’rm –i’
rm –r 递归删除文件,如果当前目录中还有子目录,则也删除其中的目录和文件。但这个命令不会覆盖alias rm=’rm –i’,它会请求提示。
ln
说明:链接文件
比如:如果你和同事都在使用文件project,则可以在主目录中生成一个链接文,比
如我和同事都在使用文件project,则可以在主目录中生成一个链接文件:
# ln /home/jm/project /home/mj/project (文件在/home/jm中,,生成了mj主目录中文件的链接)。使用其中一个文件时,改变和结果可以从两个目录中显示和访问.这也叫硬“硬链接”,这时两个文件的inode是一样的,如果删除原文件,则硬链接文件保留。
# ln –s /home/jm/project /home/mj/project (运行这个命令则可以在文件的长列表__ls –l 中看到链接文件,这叫“软链接”,如果删除原来的文件,则软链接指向空文件,原文件中的信息丢失)
备注:ln file1 file2 命令与cp –p file1 file2得到的结果一致。除非文件位于不同分区,否则文件1与文件2保持相同的inode号!