- 1. 文件操作(ls,cp,mv,rm)
- 2. 目录操作(pwd,cd,mkdir,rmdir)
- 3. 显示文件内容(cat,less)
- 4. 文件的查找(find)
- 5. command的路径(which)
- 6. 使用帮助文件(–help,man)
Linux起源于Unix,LinuxOS分为两部分,即Kernel与UserLand部分,Kernel指直接与硬件打交道的部分,由Kernel将不同硬件带来的差异进行吸收,UserLand部分指OS所需要的,除了Kernel之外的部分,比如文件系统,文件操作Command以及shell等。
1. 文件操作(ls,cp,mv,rm)
1.1 文件列举-ls
通过该命令,列举出文件名和目录名,语法如下
ls [option] [file]
--[option]
1. -a:将.开始的隐藏文件全部输出
2. -l:长形式输出
3. -t:根据最后更新时间输出
4. -r:降序输出
- 例1:*与?的差别
$ cd /etc
$ ls*.conf
Trolltech.conf nfsmount.conf
asound.conf nsswitch.conf
autofs_ldap_auth.conf ntp.conf
(略)
$ cd /etc
$ ls???.conf
cas.conf gai.conf
ntp.conf sos.conf
yum.conf
- 例2:隐藏文件的输出,
la
长形式输出含隐藏文件的所有文件
ls -la /home/linuxtext
1.2 文件复制-cp
cp [option] ori-path-copy destination-path-copy
--[option]
1. -i:输出确认用提示,比如原始目录下有同名文件,则会提示,避免覆盖原始文件
2. -r:复制整个文件夹,cp默认只复制文件,添加-r后能将该目录下所有的文件进行复制
※recursive
3. -p:将原文件的作者/属性/更新时间等信息,一起复制到新文件中
- 例:
cp /etc/hosts ~
$ cp /etc/hosts ~
$ ls
hosts
将hosts文件复制到了当前目录
-
例:
cp /etc/hosts ~/hosts.newname
指定文件名 -
例:
cp -r olddir/ newdir/
文件夹复制
$ mkdir olddir newdir
(olddir と newdir を作成)
$ cp -r olddir/ newdir/
$ ls newdir/ olddir
1.3 文件移动-mv
mv [option] ori-path destination-path
1. -i:输出确认用提示,比如原始目录下有同名文件,则会提示,避免覆盖原始文件
2. -f:强制执行
- ori-path:文件,destination-path:目录 → 移动文件到对应的目录下
- ori-path:目录,destination-path:目录 → 移动目录到对应的目录下,成为子目录
- ori-path:文件,destination-path:还不存在的文件名 → 重命名
- ori-path:文件,destination-path:还不存在的目录名 → 重命名
1.4 文件删除-rm
rm [option] 文件名
--[option]
1. -i:输出确认用提示,比如原始目录下有同名文件,则会提示,避免覆盖原始文件
2. -f:强制执行
3. -r:删除整个文件夹
2. 目录操作(pwd,cd,mkdir,rmdir)
2.1 获取当前目录pwd
(Print Working Directory)
$ pwd /home/penguin
2.2 更改目录cd
(Change Directory)
$ pwd
/home/penguin
$ cd /usr
将当前目录修改为/usr
2.3 作成目录mkdir
mkdir [option] directoryname
-- [option]
1. -p:如果directoryname是多层目录,则将其上层目录也作成
- 例:不使用
-p
逐次新建目录
$ mkdir dir1
$ mkdir dir1/dir2
$ mkdir dir1/dir2/dir3
- 例:使用
-p
一次新建目录
$ mkdir -p dir1/dir2/dir3
$ mkdir -p dir4/dir5/dir6
$ ls -R dir4
dir4:
dir5
dir4/dir5:
dir6
dir4/dir5/dir6:
2.4 目录的删除 rmdir
、
只能用于删除空目录,如果目录中有文件的话,使用rm -r
进行删除
rmdir [option] directoryname
-- [option]
1. -p:如果directoryname是多层目录,则将所有目录进行删除。
默认情况下,只删除最后一层的目录,但是其前提条件为目录必须为空。
$ mkdir directory1 directory2
(ディレクトリを作成)
$ touch directory2/file
(directory2 ディレクトリ内に file を作成)
$ ls
directory1 directory2
$ rmdir directory1
$ ls
directory2
(directory1 は空なので削除できる)
$ rmdir directory2
rmdir: failed to remove `directory2/': ディレクトリは空ではありません
(directory2 は空ではないため削除できない)
$ rm -r directory2/
$ ls
(directory2 も削除できた)
通常:养成使用rmdir删除目录的习惯,这样能减少误删除带来的危害
。
2.5 几个目录的代表符号 . .. ~ /
-
.
:当前目录 -
..
:父目录 -
~
:home目录,根据用户不同而不同 -
/
:root目录
2.6 绝对目录和相对目录
-
/usr/bin/xxx
绝对路径,以/
根root目录为起点 -
../bin/xxx
相对路径,以..
当前目录的父目录为起点
3. 显示文件内容(cat,less)
3.1 使用cat
cat [option] filename
1. -n:显示行号
3.2 使用pager
如果文件有很多行的时候,使用less
和more
能进行分页显示。
more filename
less filename
space key
:下一页b
:上一页f
:下一页↑
:上一行↓
:下一行/单词
:查找q
:结束
4. 文件的查找(find)
find filePath -name fileName
- 例:在etc目录下找名为hosts的文件
$ find /etc/ -name hosts
find: `/etc/pki/CA/private': 許可がありません
/etc/sysconfig/networking/profiles/default/hosts
(略)
/etc/hosts
/etc
下有不少目录是一般user没有权限的
5. command的路径(which)
which command名
显示出该command实际program的所在位置。
- 例子:
$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/linuxtext/bin
(ユーザが参照できるパスを確認)
$ which cat
/bin/cat
(cat コマンドは/bin 配下に配置されているのがわかる)
6. 使用帮助文件(–help,man)
コマンド --help
- 例子:
$ ls--help
使用法: ls [オプション]... [ファイル]...
man コマンド名
1. -k 单词:将包含`单词`的一览输出
man ls
man cp