linux\mac 日常入门命令行使用——文件以及文件夹操作
2017-11-09 13:31
846 查看
linux\mac 日常入门命令行使用——文件以及文件夹操作
对于没有接触过命令行的人,对于命令行还是非常恐惧的。我能够理解,但是我个人认为,大可不必。如果不是要深入研究shell,否则,日常使用其实一点都不困难。
本文主要是讲
linux系统的命令操作。我会尽量保持命令与
mac兼容。因为两者的使用本来就差不多。
linux 日常使用状态
首先,你会打开浏览器,看看网页,顺便打开网页版的微信或者钉钉。嗯,你不用打开客户端了。然后,你可能需要打开一些办公软件,比如
office之类的。
deepin集成了社区办的
wps办公软件,还是比较符合中国人的使用习惯的。如果你使用的其他发行版的系统,我们也有
LibreOffice可以使用。可能你会说这个功能没有微软的强大。我只想说,你真的用得到?
当然,你还可能会用到一些编辑器,比如
sublime或者其他编辑器。
又或者,你还需要一些音乐或者电影或者其他的各种图形界面的软件。不关心了。
最后,你肯定会使用到一个叫做终端的东西。
你可能用了十年的
windows系统,一次都没打开过
cmd工具。但是在
linux下面,使用命令行的比例,远远高于
windows系统。
你可以认为这是装逼。但更多的是,必须。其次是高效,简单。
不管你怎么看,既然决定入坑,那就接着往下看吧。
日常文件夹以及文件操作
首先,我们需要知道一个概念,就是家目录。虽然windows系统是多用户系统,但我们大多数人还是把它当成单用户系统使用。所以文件到处放,软件到处安(也是没有办法,windows软件管理做得不好,也确实没办法做好,太多太乱了)。
但是
linux系统,是标准的多用户系统。我们每个用户的东西都应该放在属于我们自己的目录中。其实体路径为
/home/fungleo/其中的
fungleo是我的用户名,你自己的系统需要替换成你的。
有一个快捷方式表示我们的家目录,就是
~。用这个快捷标识,我们就能快速的回到我们自己的家目录。
cd 进入某个目录
例如,我们要进入我们的家目录,可以输入下面的命令:cd ~
cd 是英文 change directory 的缩写,更改目录的意思。
再例如,我们要进入下载目录,就是这样的命令:
cd ~/Downloads/
要输入这样的命令,是不是感觉有点长呢?其实大可不必,我们可以用
tab键快速补全。例如,这样:
cd ~/Dow<tab>
上面的
<tab>表示按
tab键。
如果需要返回上级目录,则是使用
cd ..
在
linux系统中
.代表当前目录,
..代表上级目录。如果是上级的上级目录,就是
../..。
ls 查看目录下的文件
当我们进入到某个文件夹之后,我们不知道里面有什么文件,就可以使用这个命令:ls
ls 是英文 list 的缩写
然后我们就可以看到这个目录的文件了。这里,我们只能看到文件或者文件夹的名字,如果我们想要看到更多的内容,就可以加上
-l参数。
ls -l
这样,就会以一个列表的形式,把所有的内容全部输出出来。
如果你还想要看看隐藏的文件,可以输入
ls -a
当然,聪明的你肯定想要了,这命令可以组合起来吗?当然可以,如下:
ls -la
以上命令输出结果如下图所示:
linux/mac系统和
windows系统有一个很大的区别,就是,隐藏文件。在
linux其中中,只要一个文件或者文件夹的名字第一个字符是
.就表示这是一个隐藏文件。而
windows系统是用文件的属性来设置的。所以,使用
linux系统,你如果想要给某个文件夹或者文件隐藏,右击属性什么的,是做不了什么的。只需要重命名文件,加个
.就可以了。
mv 移动,重命名文件
在linux系统中,没有
重命名这个概念。只有一个概念,叫移动文件。把
a文件重命名为
b文件这个操作,要理解为——把
a文件移动到
b。
举例如下:
mv a b
mv 是英文 move 的缩写
就是把
a文件重命名为
b。
当然,这本来就是移动文件,也就是剪切文件。我们可以这样操作
mv ~/Downloads/love.txt ~/Documents/
就是表示,把下载目录下的
love.txt文件,移动到文档目录中
cp 复制文件和文件夹
复制文件也是一个很常见的操作。最简单的,把a文件复制为
b文件,执行下面的命令
cp a b
cp 是英文 copy 的缩写
很简单吧?
当然,和
mv命令一样,也是可以跨目录复制的。
cp ~/Downloads/love.txt ~/Documents/
如果你需要保留文件所有的权限属性之类的,可以加上参数
-a。
例如
cp -a a b
如果你复制的不是文件,而是文件夹,则要加上一个递归的参数
-r
cp -r a b
当然,复制文件夹,并且要保留所有的权限属性,加上参数
-ra
cp -ra a b
另外,如果你复制的文件夹里面有很多内容,你想看到实时进度的话,可以用
-v参数
cp -rav a b
如上命令,你就可以把
a目录的所有内容原封不动的复制到
b目录去,并且可以看到实时的复制过程。
rm 删除文件或文件夹
请注意,rm命令进行的删除操作,是不会放到系统的回收站里面去的。而是直接删除,如果你希望通过软件把文件找回来的话,也是很困难的。所以,在输入
rm命令的时候一定要头脑清晰哦!
我们想要删除某个文件,可以输入:
rm a
rm 是英文 remove 的缩写
命令进入删除。但是删除的时候,一般
linux会给你提示,你需要输入
yes同意,才能删除。但是
mac不会给提示,直接就删除掉了。
当然,如果你不想看到这个提示,而是希望直接就删除掉,可以加上一个参数
-f
rm -f a
这样,就会直接删除掉,不会再要求你输入
yes了。
如果删除的是某个目录,直接用上面的命令是不行的。删除目录必须进行递归操作,所以需要加上参数
-r,另外,你可能也不想确认,所以,命令就是:
rm -rf a
这样了。
最后,删除操作一定要谨慎。
touch 新建文件
我们可以新建一个任意的文件。命令是touch至于为什么是这个命令,我不太清楚,我联系不上 触摸 和 新建 之间的关系。
但是这个单词是一个非常简单的单词,我们可以轻松的记住。
创建一个文件
touch a
创建多个文件
touch a b c d
就可以创建 a b c d 这四个文件了。
我们可以创建任意文件。只需要加上不同的后缀就可以了。
touch a.txt b.jpg c.doc d.pdf
不过创建出来的,都是空的文件。里面需要录入内容的话,需要你自己用对应的软件打开进行编辑处理。
mkdir 新建文件夹
新建文件夹的命令是mkdir应该能够看出来,这个命令是英文
make directory的缩写。
新建一个文件夹
mkdir a
新建多个文件夹
mkdir a b c d
新建多个层级的目录,这就需要加上参数
-p了。
mkdir -p res/style/scss
就可以创建一个多层级的目录。
less 查看文本文件
如果我们需要简单的查看一个文件的内容,可以使用less命令。这个单词是少的意思。同样,多的英文
more也可以用来查看文件。
不过一般情况下,我们使用
less命令。如下:
less index.html
就可以查看这个文件了。
如果文件比较长,可以使用
ctrl + f往下翻页,也可以使用
ctrl+b向上翻页。
pwd 看看自己在哪个目录下
如果你的目录层级比较多,你导出溜达着,忘记你在哪里了,怎么办?或者,你需要把你当前的目录路径给复制出来,怎么办?没关系,我们可以使用
pwd命令,迅速输出你的当前目录路径。
pwd
需要说明的是,这里会返回完整的路径,而不是
~/xxx这样的缩写路径。
例如,你在家目录里执行这个命令,那么输出的将会是:
/home/fungleo
这样的。
man 查看某个命令的详情
如果你看到一个命令,不清楚这是干啥的,就可以用man命令来看看这个命令的详细介绍:
man cp
就可以看
cp命令的详情。
不过,这个命令输出的内容是英文的。如果你英文不行,可以到一个中文网站来看。网址是:http://man.linuxde.net/
需要注意的是,中文内容不一定是准确的,或者是最新的。
小结
好,掌握以上日常使用的命令,基本上你就可以愉快的使用命令行了。需要更多的内容,基本上可以使用搜索引擎来解决,你只需要提出正确的问题,基本上都能得到解答的。本文由 FungLeo 原创,允许转载,但转载必须保留首发链接。
相关文章推荐
- linux\mac 日常入门命令行使用——搜索文件\文件夹
- linux\mac 日常入门命令行使用——搜索文件\文件夹
- linux学习入门5——linux文件基本操作(linuxcast.net)(复制、移动、重命名、创建、删除文件及文件夹)
- linux下命令行的使用:使用sed命令操作文件
- 在Windows上使用终端模拟程序连接操作Linux以及上传下载文件
- 8.15_Linux之bash shell脚本编程入门篇(二)以及文件查找和压缩的使用
- 关于vim的一些使用以及Dos文件到Linux、Mac下问题
- Linux入门学习,怎么使用Vim编辑器编辑保存文件?以及查看浏览文件的几种方式介绍——(四)
- Linux入门 Part2: 目录操作(3) - ls 显示文件与文件夹
- 【学习Linux】文件以及文件夹的基本操作
- linux系统学习:基础篇(系统介绍以及命令行的使用)快速入门linux系统
- linux学习入门3——linux文件基本操作(linuxcast.net)(复制、移动、重命名、创建、删除文件及文件夹)
- 如何使用命令行更改文件以及文件夹的访问控制权限,从而达到最高权限控制文件的目的
- Mac下使用终端命令行导入MySQL数据库.sql文件的操作
- 使用scp命令在两台linux上对拷文件或者文件夹
- java 的 文件、文件夹 的建立、删除、复制以及移动等功能 操作
- C#中对文件以及文件夹的操作
- 使用scp命令在两台linux上对拷文件或者文件夹
- Windows和Linux下枚举(遍历)当前文件夹下所有文件完整路径的命令行
- Linux命令行下查看某文件夹下的文件个数