linux基础命令学习

#### 管理输入输出 ####

在linux系统中,正确输出的编号为1,错误输出编号为2

在系统中用普通用户执行 "student"
find /etc -name passwd

因为student用户权限问题会有以下输出

find: ‘/etc/pki/CA/private’: Permission denied        ##没有进入权力,报错
find: ‘/etc/pki/rsyslog’: Permission denied
find: ‘/etc/audit’: Permission denied
/etc/passwd                        ##正确输出
find: ‘/etc/polkit-1/rules.d’: Permission denied
find: ‘/etc/polkit-1/localauthority’: Permission denied
find: ‘/etc/dhcp’: Permission denied
find: ‘/etc/selinux/targeted/modules/active’: Permission denied
find: ‘/etc/lvm/archive’: Permission denied
find: ‘/etc/lvm/backup’: Permission denied
find: ‘/etc/lvm/cache’: Permission denied
find: ‘/etc/grub.d’: Permission denied
/etc/pam.d/passwd                    ##正确输出
find: ‘/etc/audisp’: Permission denied
find: ‘/etc/firewalld’: Permission denied
find: ‘/etc/cups/ssl’: Permission denied
find: ‘/etc/ipsec.d’: Permission denied
find: ‘/etc/libvirt’: Permission denied
find: ‘/etc/sudoers.d’: Permission denied
find: ‘/etc/named’: Permission denied

find /etc -name passwd > file        ##重定向正确输出
find /etc -name passwd 2> file        ##重定向错误输出

find /etc -name passwd &> file        ##重定向所有输出

 

注意: >, 2> ,&>  都会覆盖源文件内容
>file                    ##清空file

find /etc -name passwd >> file        ##追加正确输出
find /etc -name passwd 2>> file        ##追加错误输出
find /etc -name passwd &>> file        ##追加所有输出

注意:>> 2>> &>> 不会覆盖源文件内容,会把相应的输出字符方到文件的最后


| 管道,管道的作用是将前一条命令的输出变成管道后命令的输入

ls /bin | wc -l        ##统计ls /bin 命令输出的行数

系统中错误的输出是无法通过管道的
用 2>&1 可以把错误的输出编号由2变成1

tee    复制输出到指定位置 

这里我理解的 | 应该就是逻辑语句中与的意思把                                           

date |tee file |wc -l    ###tee命令复制date命令的输出到file中,并统计输出行数


##############
####vim ####
##############

####1.vim 命令模式####
在vim异常退出
在vim一场退出时,系统中会在所编辑的文件目录中生成.file.swp
vim再次编辑此文件时会出现相应提示
按 "o"    open
按 "e"    edit
按 "r"    recover
按 "d"    delete .swap file
按 "q"    quit


在vim的命令模式下可以配置vim的工作方式
:set nu            ##行号添加
:set nonu        ##取消行号
:set mouse=a        ##添加鼠标选择
:set cursorline        ##行线显示

以上设定都是临时的,
永久设定方式
vim /etc/vimrc        ###此文件为vim的配置文件,在此文件最后加入以上参数,加到文件中的才数不需要:


####2.vim命令模式下关键字搜索####
/关键字
n向下匹配
N向上匹配

####3.vim命令模式下字符的管理####
1.字符的复制
yl        ##复制一个字母
y3l        ##复制3个字母
yw        ##复制一个单词
y3w        ##复制3个单词
yy        ##复制一行
y3y        ##复制3行
p        ##复制完成后按“P”粘贴

2.字符的删除
dl        ##删除一个字母
d3l        ##删除3个字母
dw        ##删除一个单词
d3w        ##删除3个单词
dd        ##删除一行
d3d        ##删除3行

3.字符的剪切
cl        ##剪切一个字母
c3l        ##剪切3个字母
cw        ##剪切一个单词
c3w        ##剪切3个单词
cc        ##剪切一行
c3c        ##剪切3行
esc ---> p    ##剪切过后会进入到插入模式,在执行粘贴动作时一定要退出插入模式

####4.vim的可视化模式####

在命令模式下按“ctrl+v”进入到可视模式
在可视模式下可以区域选择字符

可视模式下批量添加字符
*>> ctrl+v 选中要加入字符所在列
*>> 按“I”进入插入模式,写入要加入的字符
*>> 按esc

####5.批量修改字符####

:%s/原有字符/替换后字符        ##只替换每一行中出现的第一个原有字符
:%s/原有字符/替换后字符/g     ##替换所有
:1,5s/原有字符/替换后字符/g    ##替换1-5行
####6.vim的分屏功能###
ctrl+w s     ###上下分屏
ctrl+w v    ###左右分屏
ctrl+w c    ###关闭光标所在屏幕
ctrl+w 上下左右 ###光标移动到指定屏幕
:sp file2    ##同时编辑当前文件和file2
####7.vim光标移动#####
在命令模式下
:数字        ##移动到指定的行
G        ##文件最后一行
gg        ##文件第一行

在插入模式下
i        ##光标所在位置插入
I        ##光标所在行行首
a        ##光标所在字符的下一个位置
A        ##光标所在行行尾
o        ##光标所在行下一行
O        ##光标所在行上一行
s        ##删除光标所在字符插入
S        ##删除光标所在行插入

####8.vim的退出模式
:q        ##当用vim打开文件但没有对字符作任何操作时可直接退出
:q!        ##当用vim打开文件并对字符作操作,放弃所有操作退出
:wq        ##保存退出
:wq!        ##强行保存退出,对超级用户及文件所有人生效

####9.vim手册####
vimtutor    ##vim的手册
:q        ##退出vimtutor

##################
####1.用户理解####
##################
用户就是系统使用者的身份
在系统中用户存储为若干窜字符+若干个系统配置文件
用户信息涉及到的系统配置文件:
/etc/passwd        ###用户信息
用户:密码:uid:gid:说明:家目录:用户使用的shell
/etc/shadow        ###用户认证信息
用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日
/etc/group        ###组信息
组名称:组密码:组id:附加组成员
/etc/gshadow        ###组认证信息
/home/username        ###用户家目录
/etc/skel/.*        ###用户骨架文件


##################
####2.用户管理####
##################

1.用户建立
useradd        参数        用户名字
        -u    ##指定用户uid
        -g    ##指定用户初始组信息,这个组必须已经存在
        -G    ##指定附加组,这个组必须存在
        -c    ##用户说明
        -d    ##用户家目录

        -s    ##用户所使用的shell,/etc/shells记录了用户能使用shell的名字

2.用户删除

userdel     -r    用户名称 -r表示删除用户信息及用户的系统配置

3.组的建立
groupadd    -g    ##建立组
groupdel    组名字    ##删除组

作以上实验的监控命令:
watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'


4.用户id信息查看
id    参数    用户
    -u    ##用户uid
    -g    ##用户初始组id
    -G    ##用户所有所在组id
    -n    ##显示名称而不是id数字
    -a    ##显示所有信息

5.用户信息更改
usermod    参数    用户
    -l    ##更改用户名称
    -u    ##更改uid
    -g    ##更改gid
    -G    ##更改附加组
    -aG    ##添加附加组
    -c    ##更改说明
    -d    ##更改家目录指定
    -md    ##更改家目录指定及家目录名称
    -s    ##更改shell
    -L    ##冻结帐号
    -U    ##解锁

######################
####3.用户权力下放####
######################
1.在系统中超级用户可以下放普通用户不能执行的操作给普通用户
下放权力配置文件:/etc/sudoers

2.下放权力的方法
*)超级用户执行visudo进入编辑/etc/sudoers模式
*)格式:
获得权限用户    主机名称=(获得到的用户身份)    命令
test    desktop0.example.com=(root)    /usr/sbin/useradd
test用户能在desktop0.example.com以超级用户身份执行/usr/sbin/useradd

3.执行下放权限命令
sudo    命令    ##如果第一次执行sudo需要输入当前用户密码
在/etc/sudoers中如果设置如下:
test    desktop0.example.com=(root)     NOPASSWD: /usr/sbin/useradd
表示用户调用sudo命令的时候不需要自己密码


############################
####4.用户认证信息的控制####
############################

chage     参数    用户
    -d    ##用户密码组后一次修改的时间,如果设定成0,用户登陆系统后必须修改自己的密码    
    -m    ##最短有效期
    -M    ##最长有效期
    -W    ##警告期
    -I    ##用户非活跃天数
    -E    ##帐号到期日格式 -E "YYYY-MM-DD"

这个很简单看手册就可以了解用法以及一些参数的意义

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值