Linux命令(2)

不进入系统更改密码
如果你忘记了密码, 嗯, 那你可真菜啊,哈哈哈
一般都会设置123456,但是还是得知道怎么改密码
1.启动虚拟机,读秒的时候按E进入grub
2.按E进入编辑
3.选择kerneal那一行(一般是第二行), 按E
4.输入空格 1 然后回车
5.按b进入单用户模式
6.输入passwd root然后回车
7.输入新密码(这里输入的密码是看不见的),回车
8.输入reboot重新启动

二.文件或目录的创建

创建目录
mkdir 目录名 (如果不指定路径,就是在当前目录下创建)
mkdir -p /a/b/c递归创建(创建多级目录)
mkdir -p /a /aa /aaa 同时创建多个目录(区别就是/a 和 /aa之间有空格分开)

文件的创建
touch 文件名(如果不指定路径,就是在当前目录下创建)
touch /home/aa/1.txt
touch /1.txt /2.txt/ 3.txt

文件操作
echo
echo “hello” 打印到屏幕

不通过交互信息直接修改密码
echo 新密码 | pass我的 –stdin root (只能root用户使用)

echo hello >1.txt 覆盖写入
echo world >> 1.txt 追加写入

cat
cat 2.txt > 1.txt 将2的内容写入1

cat << EOF > 1.txt 向1.txt中循环写入内容 ,输入EOF退出输入

文件或目录的拷贝.移动
cp 原始位置 新位置
cp ./1.txt /home/1.txt.bat (拷贝到home并且改名字)
cp -r(recursive) /home/a ./a.bak (递归拷贝 目录并改名字)

mv 移动(可以使用这种方法修改文件的名字)
mv 原始位置 新位置
mv 1.txt /home/1.txt.bat
删除文件或目录
rm -r 目录(删除该目录下所有, 每删除一个文件都会提示你是否删除))
rm -f 目录(同上,但是不给任何提示直接删除)

文件的改名
rename + 要修改的字符串 + 修改后的字符串 + 匹配的文件(例如: rename hello helloworld hello.txt)
rename .bak .ba ./* (修改文件的后缀名)
rename .ba ” ./*.ba 去掉.ba的文件名后缀(用单引号”替换)

文件或目录的查看
ls 查看文件列表
ls -a 查看所有,包括因残文件,包含当前目录和上一级目录
ls -l 以列表单的形式现实详细内容
ls -h 人类可读(转换文件的大小)

cat 查看文件内容 一次性将文件所有内容打印到控制台
-n 显示行号

more 分页查看文件,适合内容较多的文件
-》空格向下翻页
-》b回看(向上翻页)
-》enter 逐行查看
-》q 退出

less 查看文件 ,支持搜索

-》空格向下翻页
-》b回看(向上翻页)
-》enter 逐行查看
-》q 退出

head 默认取文件的前十行,head -n 取文件的前n行

tail 默认取文件的末尾十行(HDFS的shell中是从文件末尾取1k大小的数据)

tail -n 取文件末尾n行数据

tail -n +10 取第十行到最后一行数据

tail -f 监控文件的inode号,文件改名,移动,将监控不到

tail -F 监控文件的名字,文件不存在也能监控。

文件的查找
where 用于查找并显示命令的绝对路径, 相当于从环境变量中找

whereis 用于查找软件的安装位置(查找的范围, 在特定的范围中找)

locate 查找文件所在,查找的是linux文件的数据库,效率高,速度快。弊端:数据库不是实时更新的
新创建的文件的可能找不到,如果想找到,要更新数据库使用命令updatedb

find 查找速度慢,参数前的路径可以有多个,表示从多个路径下查找(类似于Windows中文件搜索)
find /root/Desktop /home -name “*.txt”

-替换
:s/root/bg1814 查找光标所在行的第一个root并替换为bg1814

:s/root/bg1814/g 查找光标所在行的所有root并替换为bg1814

:%s/sbin/bg1814/g 查找并替换文件中所有sbin替换成bg1814

:5,$s/bg1814/bg18-14/g 从第五行开始,查找并替换bg1814,替换成bg18-14

:2,5s/bg18-14/bg1814/g 替换第二行到第五行的bg18-14,替换为bg8114

文件编辑
vi 或者 vim

输入vi进入

一般模式
dd 删除光标所在行
ndd 从光标所在行开始,删除n行
dG 从光标所在行删除到文件末尾
x 删除光标所在处的字符
nx 从光标所再出开始,连续删除n个字符
D :从光标所在处开始,删除到该行末尾
r: 替换光标所在处的字符
R: 从光标所在处开始替换,根本停不下来,按ESC停止
u : 取消上一步操作
ctrl + r :返回到取消前
yy 复制一行
nyy 复制n行
p 粘贴
gg 定位到行首
ngg 定位到n行
G 定位行尾
———–查找
按/加上查找的字符串,从光标所在处开始查找
按n匹配下一个找到的位置,按N匹配上一个找到的位置

在vi下,输入i进入编辑模式
编辑模式
i 光标所在处前一个位置开始输入
I 光标所在行行首开始输入
a 光标所在处后一个位置开始输入
A 光标所在行行尾开始输入
o 光标所在行下一行开始输入
O 光标所在行上一行开始输入

如何退出编辑模式 ESC退出编辑模式

底行模式 :shift +: (冒号) 进入到底行模式 w 保存 q 退出 wq 保存并退出 q! 强制退出 wq! 强制保存退出

set nu 设置行号
:set nonu 取消行号
:n 定位到n行

cd :查看某一目录的路径
pwd :查看当前所在位置

文件的打包和压缩

1)压缩
gzip :用来压缩文件。以“.gz”为扩展名。可以压缩较大的文件,节省磁盘空间,可以与tar命令构成linux
操作系统比较流行的压缩格式
(1)、压缩时不保留源文件
(2)、解压缩命令gunzip
(3)、可以同时压缩多个文件
(4)、可以同时解压缩多个文件
(5)、不能压缩目录

bzip2:用来压缩文件。以“.bz2”为扩展名
(1)、压缩时不保留源文件
(2)、解压缩命令bunzip2
(3)、可以同时压缩多个文件
(4)、可以同时解压缩多个文件
(5)、不能压缩目录

2)打包
可以将多个文件或目录放在一起,形成一个文件
tar -cvf chou.tar 1.txt passwd.bak home.bak
-c 打包
-v 详细信息
-f 指定文件
-x 解包
-C(大写) 重定向,解包出来的文件或目录存放在哪儿里
-z 以gzip格式压缩或者解压
-j 以bzip2格式压缩或者解压

tar -zcvf youxiu.tar.gz 1.txt passwd.bak home.bak
tar -zxvf
tar -jcvf
tar -jxvf

用户于组的操作
root 用户

所有普通用的用户ID从500开始
1-499 系统用户
0 root用户

所有用户必须有所属组,创建用户时如果不指定组,系统会默认给我们创建一个与用户同名的组。
用户id与组id由系统分配

基本组:用户的主组,显示在/etc/passwd文件内的组
附加组:显示在/etc/group文件内
useradd + 用户名 :添加一个用户
useradd -u 666 -g 500 -G 502 user3

删除一个用户

userdel
-r 删除用并删除用户家目录
-f 删除用户,即使用户已经登录

修改用户
usermod
-g
-G
-u
usermod -u 505 -g 500 -G 502 hadoop

passwd + 选项 + 参数

passwd root

-l 锁住密码
-u 解锁密码

/etc/shadow ##存储了用户的密码信息

groupadd
groupadd manager
-g 指定组id

gpasswd
-a 向组中添加用户
-d 从组中删除用户
-r 删除组的密码

groupdel
groupdel +组名
注意:删除组的时候,组中必须没有用户存在,否则删除不了

groupmod 修改组

-g 修改组id
-n 修改组名字

id 显示用户的id
-g 显示组id
-G 显示附加组id
-u 显示用户id

四、文件的权限
权限:可读、可写、可执行

-|rw-|—|—. 1 root root 1771 4月28 2015 anaconda-ks.cfg
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨
①:文件类型
- 文件
d 目录
l 软链接(符号链接)
②:所有者权限(u)user
r 读 4
w 写 2
x 执行 1
③:所属组权限(g)group
r 读 4
w 写 2
x 执行 1
④:其他用户权限(o)other
r 读 4
w 写 2
x 执行 1
⑤:所有者
⑥:所属组
⑦:文件大小
⑧:最后修改时间
⑨:文件名

chmod ugo+w 1.txt
chmod ugo-x 1.txt
chmod -R 777 ./home.bak 递归修改文件权限

修改文件所有者及所属组
chown hadoop:hadoop 1.txt

chown -R hadoop:hadoop home.bak 递归修改所属组及所属用户

sudo权限配置
sudo权限配置
visudo -f /etc/sudoers
授权
Allow root to run any commands anywhere
root ALL=(ALL) ALL
user0 ALL=(ALL) ALL(配置的用户)

不用输入密码
Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL
user0 ALL=(ALL) NOPASSWD: ALL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值