Linux学习初阶

Linux学习初阶

使用ubuntu学习linux,安装方法与win安装的方法大同小异,看着图形化界面下一步就好了,虽然用图形化界面有点low。

学习linux,其实主要学的就是linux命令,在初级阶段就是如此,学学怎样用命令复制/粘贴啥的。

好了,不说太多,直接进入命令行学习了。

需要注意一点,ubuntu刚安装完,是锁定root,也就是超级管理员权限的。

也就是说在ubuntu刚安装完输入su指令,会出现认证失败的问题。

用su切换,输入密码提示认证失败,这下搞了吧,后来一经查阅原来Ubuntu安装后,root用户默认是被锁定了的,不允许登录,也不允许 su 到 root ,对于桌面用户来说这个可能是为了增强安全性,但是服务器版上的没这个还真不行,赶紧设置下吧。

终端下
studiogang@studiogang:~$ sudo passwd 

Password: <--- 输入安装时那个用户的密码 

Enter new UNIX password: <--- 新的Root用户密码 

Retype new UNIX password: <--- 重复新的Root用户密码 

passwd:已成功更新密码

解决了这个小问题,我们就开始学习linux吧,当然学习指的是学习linux指令!

linux安装日志

/root/install.log:存储安装在系统中的软件包机器版本信息

/root/install.log.syslog:存储了安装过程中留下的事件记录

/root/anaconda-ks.cfg:一Kickstart配置文件的格式记录安装过程中设置的选项信息

linux常见目录

/root   超级用户的家目录
/tmp    临时目录
/sbin   命令保存目录(超级用户才能使用的目录)
/proc   直接写入内存的
/sys
/usr    系统软件资源目录
    /usr/bin/   系统命令(普通用户)
    /usr/sbin/  系统命令(超级用户)
/var    系统相关文档内容

常见目录作用

/bin    命令保存目录(普通用户就可以读取的命令)
/boot   启动目录,启动相关文件
/dev    设备文件保存目录
/etc    配置文件保存目录
/home   普通用户的家目录
/llib   系统库保存目录
/mnt    系统挂载目录
/media  挂载目录

linux中的通配符

*   匹配任意内容
?   匹配任意一个字符
[]  匹配任意一个中括号内的字符

linux命令

命令格式:

命令 【选选个】 【参数】

注意:
    个别命令使用不遵循此格式,当有多个选项时,可以卸载一起。

简化选项与完整选项
    -a 等于 --all

命令提示符

[root @loaclhost ~]#
其中:
    root:       当前登录用户
    localhost   主机名
    ~           当前所在目录(家目录)
    #           超级用户的提示符
                普通用户的提示符是$

查询目录中内容:ls

ls [选项] [文件或目录]
选项:
    -a  显示所有文件,包括隐藏文件
    -l  显示详细信息
    -d  查看目录属性
    -h  人性化显示文件大小
    -i  显示inode

文件权限
使用ls -a这个命令的时候会在开头会显示权限,如

-rw-r--r--
其中开头的第一位表示文件类型:
    -   表示文件
    d   表示目录
    l   表示软链接文件
后面剩下9位,其中每三位代表一个权限组
rw- 是文件所有者所拥有的权限
r-- 是文件所属组所拥有的权限
r-- 最后面的三位代表其他人所拥有的权限

r代表可读, w代表可写入, x代表可执行(此处没显示)

查询所在目录位置:pwd

pwd
命令英文原意:print working directory

建立目录

mkdir -p [目录名]
-p 递归创建
命令英文原意:make directories

路径

相对路径:参照当前所在目录,进行查找
如: [root@localhost ~]# cd ../usr/local/src/

绝对路径:从根目录开始制定,一级一级递归查找,在任何目录路,都能进入指定目录
如: [root@localhost ~]# cd /etc/

切换所在目录:cd

cd [目录]
命令英文原意: change directory

简化操作
cd ~    进入当前用户的家目录
cd
cd -    进入上次目录
cd ..   进入上一级目录
cd .    进入当前目录

复制命令:cp

cp [选项] [原文件或目录] [目标目录]
命令英文原意:copy
选项:
    -r  复制目录
    -p  连带文件属性复制
    -d  若源文件是链接文件,则复制链接属性
    -a  相当于-pdr

剪切或改名命令:mv

mv [原文件或目录] [目标目录]
命令英文愿意:move

删除空目录:rmdir

rmdir [目录名]
命令英文原意:remove empty directories

删除文件或目录:rm

rm -rf [文件或目录]
命令英文原意:remove
选项:
    -r  删除目录
    -f  强制

链接命令:ln

ln -s [原文件] [目标文件]
命令英文原意:link
功能描述:生成链接文件
    选项: -s  创建软连接

硬链接与软连接

硬链接特征:
    1、拥有相同的i节点和存储block块,可以看作是同一个文件
    2、可通过i节点识别
    3、不能跨分区
    4、不能针对目录使用

软连接特征:
    1、类似于windows的快捷方式
    2、软连接拥有自己的I节点和block块,但是数据块中只保存原文件的文件名和I节点,并没有实际的文件数据
    3、lrwxrwxrwx    l软连接
        软连接文件权限都为:rwxrwxrwx
    4、修改任意文件,另一个都改变
    5、删除源文件,软连接不能使用

文件搜索之locate命令格式

locate 文件名
在后台数据库中按文件名搜索,搜索速度快

/var/lib/mlocate
#locate命令所搜索的后台数据库(每次开机才更新)

updatedb
更新数据库(强制更新

/etc/updatedb.conf配置信息

PRUNE_BIND_MOUNTS="yes"
#开启搜索限制
PRUNEFS=
#搜索时,不搜索的文件系统
PRUNENAMES=
#搜索时,不搜索的文件类型
PRUNEPATHS=
#搜索时,不搜索的路径

PATH环境变量

Path环境变量:定义的是系统搜索命令的路径

[root@loaclhost ~]# echo $PATH
/usr/lib/qt03.3/bin:/usr/loacl/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

其中:表示并列符号

文件搜索命令locate

命令搜索命令whereis

whereis 命令名
#搜索命令所在路径及帮助文档所在位置
选项:
    -b:     只查找可执行文件
    -m:     只查找帮助文件

搜索命令的命令which

which 文件名
#搜索命令所在路径及别名

文件搜索命令find

find [搜索范围] [搜索条件]
#搜索文件

find / -name install.log
#避免大范围搜索,会飞行行耗费系统资源
#fand实在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配

find /root -iname install.log
#不区分大小写
find /root -user root
#按照所有者搜索
find /root -nouser
#查找没有所有者的文件

find /var/log/ -mtime +10
#查找10天前修改的文件

-10     10天内修改的文件
10      10天当天修改的文件
+10     10天前丢该的文件

atime   文件访问时间
ctime   改变文件属性
mtime   修改文件内容

find . -size 25k    
#查找文件大小是25kb的文件

-25k        小于25k的文件
25k         等于25k的文件
+25k        大于25k的文件    

find . -inum 262422
#查找i节点是262422的文件

find /etc -size +20k -a -size -50k
#查找/etc/目录下,大于20kb并且小于50kb的文件
-a  and 逻辑与,两个条件都满足
-o  or  逻辑或,两个条件满足一个即可

find /etc -size +25k -a -size -50k -exec ls -lh {} \;
#查找/etc/目录下,大于20kb并且小于50kb的文件,并显示详细信息
#-exec/-ok命令{} \;对搜索结果执行操作

搜索字符串命令grep

grep [选线] 字符串 文件名
#在文件当中匹配符合条件的字符串
选项:
    -i 忽略大小写
    -v 排除指定字符串

find命令与grep命令的区别

find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。

grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配。

帮助命令man

man 命令
#获取指定命令的帮助信息

man ls
#查看ls的帮助信息

man的级别

1 : 查看帮助的命令
2 : 查看可被内核调用的函数的帮助
3 : 查看函数和函数库库的帮助
4 : 查看特殊文件的帮助(主要是/dev目录下的文件)
5 : 查看配置文件的帮助
6 : 查看游戏的帮助
7 : 查看其他杂项的帮助
8 : 查看系统管理员可用命令的帮助
9 : 查看和内核相关文件的帮助

查看命令拥有那个级别的帮助

    man -f 命令
相当于
    whatis 命令

举列:

man -5 passwd
man -4 null
man -8 ifconfig

查看和命令相关的所有帮助

man -k 命令

相当于
apropos 命令

例如:

apropos passwd

shell内部命令帮助

help shell内部命令
#获取shell内部命令的帮助

例如:
whereis cd
#确定是否是shell内部命令
help cd
#获取内部命令帮助

详细命令帮助info

info命令
    - 回车:       进入子帮助页面(带有*号标记)
    - u :       进入上层页面
    - n :       进入下一个帮助小节
    - p :       进入上一个帮助小节
    - q :       退出

选项帮助

    命令 --help
    #获取命令选项的帮助

例如

    ls --help

压缩与解压

.bz2格式的压缩

bzip2 源文件
#压缩为.bz2格式,不保留源文件
bizp2 -k 源文件
#压缩之后保留源文件

注意bzip2命令不能压缩目录

解压bz2文件
bzip2 -d 压缩文件
#解压缩,-k保留压缩文件

bunzip2 压缩文件
解压缩,-k保留压缩文件

.gz格式压缩

gzip 源文件
#压缩为.gz格式的压缩文件,源文件会消失
gzip -c
#压缩为.gz格式,源文件保留
例如: gzip -c yasuowenjian > yasuowenjian.gz
gzip -r
# 压缩目录下所有的子文件,但是不能压缩目录

.gz解压缩

gzip -d 压缩文件
#解压缩文件
gunzip 压缩文件
#解压缩文件

.zip格式压缩

zip 压缩文件名 源文件
#压缩文件

zip -r 压缩文件名 源目录
#压缩目录

.zip格式解压缩

unzip 压缩文件
#解压缩.zip文件

打包命令tar

linux中并没有压缩文件夹的功能,所以如果想压缩文件夹就要先使用tar打包成一个文件,然后再进行压缩

tar -cvf 打包文件名 源文件
选项:
    -c: 打包
    -v: 显示过程
    -f: 指定打包后的文件名

例如:
tar -cvf longzls.tar longzls
#将longzls打包为longzls.tar

解打包命令

tar -xvf 打包文件名
选项:
    -x:解打包

例如:
tar -xvf longzls.tar

.tar.gz2压缩格式

tar -jcvf 压缩包名.tar.bz2源文件
选项:
    -z:压缩为.tar.bz2格式

tar -jxvf 压缩包名.tar.bz2
选项:
    -x:解压缩.tar.bz2格式

.tar.gz压缩格式

.tar.gz格式是先打包为.tar格式。在压缩为.bz格式

tar -zcvf 压缩包名.tar.gz 源文件
选项:
    -z:压缩为.tar.gz格式

tar -zxvf 压缩包名.tar.gz
选项:
    -x:解压缩.tar.gz格式

你可能感兴趣的:(Linux学习初阶)