加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux基础上

发布时间:2020-12-14 01:30:08 所属栏目:Linux 来源:网络整理
导读:? 文件操作 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 掌握下面的命令是最基本的噢!那是我们使用一个系统最基本的操作。 玩过dos么,其实,linux下的文件操作和dos差不多。没什么难的,多

?

文件操作 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
  掌握下面的命令是最基本的噢!那是我们使用一个系统最基本的操作。
  玩过dos么,其实,linux下的文件操作和dos差不多。没什么难的,多练习就记住了。下面如果有条件的话请跟我一样操作吧!百看不如一做。不用刻意去记,每天做遍自然就记到了? ? ? ? ? ? ??

?

[[email?protected] test]#?ls?????显示当前目录下的所有文件及文件夹

[[email?protected] test]#?ll ? ? ?以详细方式显示所有文件与文件夹。(相当于?ls -l?命令) ? ?

[[email?protected] test]#?cd??/user? ?打开user文件夹

? ? ?如果不知道要打开的文件夹全称或名过长,可以按tab键盘自动补齐,如:cd??/u?+?table键,系统自动帮我们补齐成?/user?

[[email?protected] test]#cd?..????(后面空格加两点)返回上一级目录

[[email?protected] test]#pwd? ? ?显示当前目录路径

??超简单,记好上面几个在文件夹之间到处跳已经没问题了。

?

文件的增、删、查、移

[[email?protected] test]#?mkdir??test ? ? ? ? ??创建文件夹

[[email?protected] test]#?touch??test.txt ? ? ?创建文件

[[email?protected] test]#?cp?test.txt??test2.txt ? ? ??把test.txt文件当前文件夹下复制出个test2.txt

[[email?protected] test]#?cp?test.txt??/hzh/test ? ? ??将test.txt?复制到/hzh/test??目录下?

[[email?protected] test]#?rm??aa.txt ? ? ? ?删除aa.txt文件

[[email?protected] test]#?rm??-r??bb ? ? ? ??删除bb目录(包括目录下的所有文件)

[[email?protected] test]#?rm??-rf?bb ? ? ? ? 删除bb目录(不对目录下的每个文件提醒删除)?

[[email?protected] test]#?mv?dd.txt?.. ? ? ??将dd.txt文件移动上一级目录(注意尾部的两个点)

[[email?protected] test]#?mv?bb.txt??/hzh/test/? ? ? 将bb.txt文件移动到hzh/test/目录下

[[email?protected] test]#?mv??dd.txt??dd2.txt ? ? ??将dd.txt改名为dd2.txt

?

文件查找:
统配符 ?* 与windows下相同
[ [email?protected] bin]# find /etc -name ini? ?查找/etc目录下,以ini打头且后面一位的文件,
[ [email?protected] bin]# find /etc -name ini*

[[email?protected] test]#locate??aa.txt ? ? ?

? ? 查整个系统中的aa.txt文件,locateslocate命令后面跟文件或文件夹。不过在执行这个命令之前要先更新数据库,所以选执行?

updatedb?命令。

?

用户权限 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?
  其实,这个地方对于新手来说感觉有点复杂,但是并不难,只要记好了规则就可以了。
  我们现有随便进入一个文件夹下,这个文件下要至少有一个文件或文件夹,然后敲 ll 命令。
[ [email?protected] test]#? ll
总用量 24
rwx------ ?2 root root 16384 ?2月 22 04:31 lost+found
rwxr-xr-x ?2 root root ?4096 ?3月 18 14:43 test
?
那么文件前面的“drwxr-xr-x”就表示的权限!
linux下分三类用户:
u ?所有者
g ?所属组
o ?其他人
?
我们把“rwxr-xr-x”分为三部分,三位一组。如下
rwx ? ? ? r-x ? ? ? ?r-x
所有者 ? 所属组 ? 其它人
权限类型:
所要注意的是,权限对文件和目录的含义是有差别的。

修改权限符号:
+ ?加权限
- ? 减权限
= ?等于什么权限
?
当我们想修改一个文件(或目录)的权限时:
[ [email?protected] hzh]#?chmod ?u+w ?a ? ? ? 给a文件的所有者加上写权限(chmod 为修改权限的命令)
?
其实,我们一般修改用户权限时不这样写,那怎么写呢,用数字表示。
r - 4 ? ? w - 2 ? ? x - 1
rwx--r-wx
r+w+x=7
r=1
w+x=3
相信下面的两个你也明白:
rw-r-x-w- ? ? 652
754 ? ? ?rwxr-xr--
例如:
[ [email?protected] hzh]#?chmod 641 ?a
641 ?rw-r----x ?所有者有读、写权限,组有读权限,其他人有执行权限
?
?
软链接与硬链接 ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
软连接:
软连接类似于我们windows系统的“快捷方式”
????那么在windows下之所以要设置快捷方式,就是因为有些文件放置的位置不容易找到,我们就会在桌面创建一个快捷方式。
? ? 那么在linux下的软链接,我想主要是文件名过长,不便于输入。因为linux下对文件对文件操作一般要输入文件名,不像windows下面无所谓文件名的长短,鼠标点击即可完成各中操作。
创建一个软链接
[ [email?protected] test]# ln -s ruanlianjie.abc /hzh/test/rlj.soft ??
   对当前目录下的 ruanlianjie.abc文件,在/hzh/test/目录下创建一个软链接,名为rlj.soft
[ [email?protected] test]# ll
总用量 36
lrwxrwxrwx ?1 root root ? ?15 ?3月 19 20:57?rlj.soft -> ruanlianjie.abc
-rw-r--r-- ?1 root root ? ?28 ?3月 19 20:57 ruanlianjie.abc
?
现在就可以对软件链接,进行操作了,
[ [email?protected] test]#?vi rlj.soft ? ? ? ? ?编辑rlj.soft文件,其实也就是编辑ruanlianjie.abc文件
?
硬连接:
? ? ? ?硬连接相当于把原文件拷贝了一份,唯一特殊的地方就是,两个文件是同步的。当你对其中一个文件进行修改时,另一个文件也就会同步更新你的修改。有什么好处,你懂的!
下面创建一个硬链接:
[ [email?protected] test]#? ln?yinglianjie.abc /hzh/test/ylj.hard? ? ? ?
   对yinglianjie.abc文件在/hzh/test/目录下创建一个硬链接文件ylj.hard?
[ [email?protected] test]# ll
-rw-r--r-- ?2 root root ? ? 0 ?3月 19 21:08 yinglianjie.abc
-rw-r--r-- ?2 root root ? ? 0 ?3月 19 21:08 ylj.hard
?
[ [email?protected] test]#? vi?ylj.hard ? 对硬链接ylj.hard文件时行修改并保存
[ [email?protected] test]# ll ? ? ? ? ? ? ? ? ? ? ??
-rw-r--r-- ?2 root root ? ?14??3月 19 21:09?yinglianjie.abc ? ? ?我们会发现yinglianjie.abc也被同步修改了
-rw-r--r-- ?2 root root ? ?14 ?3月 19 21:09 ylj.hard
?
文件压缩与解压? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
????文件的压缩与解压,也是我们日常中经常用到的操作,如,我们会经常从网上下载各种文件进行进行安装,而大部分文件都是经过压缩的。
下面来学习四个常用的压缩命令。
gzip
特点:
1.只能压缩文件,不能压缩目录
2.不保留源文件
?
[ [email?protected] test]# gzip aaa ? ? ? ? ? ? 将aaa文件进行压缩
[ [email?protected] test]#?gunzip aaa.gz ? ? 将aaa.gz文件进行解压
[ [email?protected] test]# gzip -d aaa.gz ? ?作用同上
??
tar
tar类型的的压缩文件应该是大家最常见的吧,在网上下的好多软件也是这种格式的。
参数:
-x?解包.tar文件
-v 显示详细信息
-f 指定解压文件
-z 解压缩
[ [email?protected] test]# tar -zcvf ?tatga.tar.gz ?tatgz ? ?压缩tatgz文件夹为tatga.tar.gz压缩文件
注意:
在linux下扩展名不是标识文件的属性
[ [email?protected] test]# file [文件名] ? ? ? ? ? ? ? ? ? ? ? 查看任何一个文件的类型
[ [email?protected] test]# tar -cf tatga.tar ?tatgz ? ? ? 对tatgz文件打包
[ [email?protected] test]# gzip tatga.tar ? ? ? ? ? ? ? ? ? ?对tatga.tar包文件压缩
[ [email?protected] test]# tar -zxvf tatga.tar.gz ? ? ? ?对压缩文件进行解压
?
?
zip?
功能:可以压缩文件和目录,是windows 和linux 通用的压缩格式
?
[ [email?protected] test]# zip a.zip ?a ? ? ? ? ? ? ? ? ? ? 把a文件压缩成a.zip
[ [email?protected] test]# zip -r tatgz.zip tatgz ? ? ?压缩tatgz目录为tatgz.zip
[ [email?protected] test]# unzip ?tatgz.zip ? ? ? ? ? ? ?解压文件
?
?
bzip2?
gzip功能基本相同
只能压缩文件
用 -k 命令可以保留原文件?
[ [email?protected] bzip2]# bzip2 -k fnngj ?对fnngj文件进行压缩?
[ [email?protected] bzip2]# bunzip2 ?fnngj.bz2 ? 对压缩文件fnngj.bz2进行解压
?

通信命令 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ??
?
? ? 我们都知道linux有别于windows是的一个特性就是,多用户的操作系统。允许多个用户同进对系统进行操作。那么多个用户之间如何进行通信呢?下面来看两个有趣的通信命令。
?
write
发给某个用户信息
[ [email?protected] ~]#?write [用户名] ??

例如:
[ [email?protected] ~]# ?write fnngj ?给fnngj用户发送信息
hello fnngj !! I like you!!xixi ? ? ? 发送的内容
ctrl + D ?结束
?
wall
?
发给所有使用系统的用户
[ [email?protected] ~]# wall [信息内容]

[ [email?protected] ~]# ?wall hello china
?
ping
?
测试本机与某一地址时候连通的
[ [email?protected] ~]# ?ping 192.168.203.128
[ [email?protected] ~]# ?ping ?www.baidu.com?
[ [email?protected] ~]# ?ping -c ?4 192.168.203.1 ? ?-c 相当于windows(dos) 下的默认情况(会发送4次数据时行测试)
? ? ? 其实,我们可以设置发送数据包的次数
[ [email?protected] ~]# ping -s ?5000 ?192.168.203.1 ? 设置ping包的个数为5000; 最大为65507
?
ifconfig??
这个命令类似于dos下面的ipconfig ??
[ [email?protected] ~]#? ifconfig ? ? ? ? ??查看本机IP地址详细信息
?
?
命令链接符?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
????有时候,我们为输入方便为把多个命令放在一起输入执行。有点类似于dos下的批处理。就是一组命令的集合。那么我们看看都有哪些符号用于命令之间的连接。
-------------------------------------------------------------------------------?
管道
  将一个命令的输出传送给另一个命令,作为另一个命令的输入。
使用方法:
  命令1 |?命令2 |?命令3... |?命令n
例如:
[ [email?protected] test]# ls -l /etc | more ? 显示/etc目录下的所有文件,以分页形式more
[ [email?protected] test]# ls -l /etc | grep init | wc -l ? ??显示/etc目录下的所有文件,查找init文件,显示查找结果的数量。
-------------------------------------------------------------------------------
;(逗号)
用;间隔的各命令按顺序依次执行
[ [email?protected] ~]# pwd ; ll ; data
-------------------------------------------------------------------------------?
&&
command1 && command2
? 成功 ? ? ? ? ? ? ? ?执行
? 失败 ? ? ? ? ? ? ? ?不执行
[ [email?protected] ~]# lskk && pwd ? ? 如果第一个命令执行失败,第二个命令就不执行。
前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,他后面的命令才能被执行
--------------------------------------------------------------------------------?
||
[ [email?protected] ~]# lskk || pwd ? ? 如果第一个命令执行失败,第二个命令就执行。
command1 || command2
? 成功 ? ? ? ? ? ? ? ?不执行
? 失败 ? ? ? ? ? ? ? ? 执行
前后命令的执行存在逻辑或关系,只有||前面的命令执行失败后,他后面的命令才被执行。
?
输入/输出重定向 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
????其实,对于我们的计算机来讲,我们的标准输入设备是键盘,标准输入设备是显示器。
假如,我告诉,如果我们的输入不用键盘了,输出不在显示上了。你会说这怎么稿?即便是使用计算机多年的人,一下子也会迷糊。呵呵!看了我下面几个操作,你就明白了。
同标准I/O一样,Shell 对于每一个进程预先定义了个文件描述
(0、1、2)。分别对应于:
0 (stdin)标准输入
1 (stdout)标准输出;
2 (stderr)标准错误输出。
?
输出重定向
????我们可将某个输入的信息保存到一个文件中。
[ [email?protected] ~]# ls -l /tmp > /tmp.msg ? ? ?将查看tmp目录的信息保存到/tmp.msg 文件中。屏幕中不显示任何结果。
[ [email?protected] test]# vi /tmp.msg ? ? ? ? ? ? ? ? 查看/tmp.msg?文件信息
总用量 8
srwxr-xr-x ?1 root ?root ?0 ?2月 22 19:36 mapping-root
srwxrwxrwx ?1 mysql mysql 0 ?2月 27 22:35 mysql.sock
?
[ [email?protected] ~]# data >>/tmp.msg ? “ >>”表示追加,在/tmp.msg?再追加一些新的信息。
?
?
输入重定向
? ? ? 我们也可以将某个输入保存到一个文件中。
? ? ?上面我们学到一个wall命令,后面跟的信息可以广播表其它在线用户,当然,我们可以将要广播的信息保存到一个文件中,当然,如果有兴趣,我们还可以设定时间进行发送。
[ [email?protected] ~]# wall < /etc/motd ? ?将motd文件中的信息进行广播。
?
错误输出重定向
????假如,我要对一个目录进行备份(/usr),备份到/backup/usr.bak目录下,可以备份时间要很久,我不想一直盯着屏幕看,这时我就可以设置,如果备份时发生错误,将错误信息保存到/bak.error文件中。这样我就可以找朋友喝喝茶,聊聊天,回来看错误信息就可以了。
[ [email?protected] ~]# cp -R /usr ?/backup/usr.bak 2> /bak.error

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读