Linux常用命令

ls查看目录

ls 显示当前目录下的所有文件和目录的列表。

ls -l 显示更详细的信息,如文件权限、大小、修改日期等

ls -a 显示包括隐藏文件(以点开头的文件)

ls -al 显示当前目录下的所有文件和目录的详细信息,包括隐藏文件。

请注意,当使用 ls 命令时,它默认显示当前工作目录的内容。如果你想查看其他目录的内容,可以提供完整的路径信息,如下所示:

ls /path/to/directory

其中 /path/to/directory 是你想要查看内容的目录的路径。

cd切换文件夹

cd mydir 将使当前工作目录更改为 mydir。如果 mydir 不存在或不是有效的目录,会出现错误提示。

cd .. 将使当前工作目录返回到上一级目录。

cd ~ 将使当前工作目录返回到用户的主目录。

请注意,当使用 cd 命令时,需要有足够的权限来进入目标目录。同时,你也可以提供完整的路径信息,如下所示:

cd /path/to/directory

其中 /path/to/directory 是你想要进入的目录的完整路径。

②增

mkdir创建文件夹

mkdir mydir 将在当前工作目录下创建一个名为 mydir 的新目录。

mkdir /path/to/mydir 在指定的路径下创建目录

其中 /path/to/ 是希望创建目录的路径,mydir 是新目录的名称。

如果要创建多级目录,可以使用 -p 选项。例如,要创建一个名为 parentdir 的父目录和一个名为 childdir 的子目录,可以运行以下命令:

mkdir -p parentdir/childdir

这将递归地创建 parentdir 目录和 childdir 目录。

请注意,当使用 mkdir 创建目录时,需要有足够的权限来在所选位置进行操作。

touch创建文件

touch myfile.txt 在当前工作目录下创建一个名为 myfile.txt 的新文件。如果该文件已经存在,则会更新该文件的访问时间和修改时间。

如果你想在指定的路径下创建文件,可以提供完整的路径信息,如下所示:

touch /path/to/myfile.txt

其中 /path/to/ 是希望创建文件的路径,myfile.txt 是新文件的名称。

请注意,当使用 touch 创建文件时,需要有足够的权限来在所选位置进行操作。

cp复制

cp test2.txt test3.txt

该命令会将 test2.txt 文件的内容复制到 test3.txt 文件中。如果 test3.txt 文件不存在,则会创建一个新的空文件,然后将内容复制到其中。如果 test3.txt 文件已经存在,则会覆盖其原有内容。

如果你希望在复制前备份 test3.txt 文件,你可以将 test3.txt 重命名为其他名称,例如 test3_backup.txt,然后再执行上述 cp 命令。具体命令如下:

mv test3.txt test3_backup.txt
cp test2.txt test3.txt

这样就能够将 test2.txt 文件的内容复制到 test3.txt 文件中,并保留 test3.txt 文件原有的备份。

mv移动

"mv" 是 Linux 和 Unix 系统中用于移动或重命名文件和目录的命令。它的基本语法是:

mv [选项] 源文件或目录 目标文件或目录

其中,源文件或目录是要移动或重命名的文件或目录的路径,目标文件或目录是移动或重命名后的目标路径。

例如,如果要将文件 file.txt 移动到目录 /home/user/documents 下,可以使用以下命令:

mv file.txt /home/user/documents

如果要将文件 file.txt 重命名为 newfile.txt,可以使用以下命令:

mv file.txt newfile.txt

请注意,mv 命令也可以用于在不改变文件位置的情况下重命名文件。

rm删除、重命名

rm -r 和 rm -f 是在 Linux 操作系统中使用的命令,都是用于删除文件和目录的。

rm -r 用于递归地删除目录及其下面的所有文件和子目录。在执行该命令时,会提示你确认是否要删除每个文件和子目录,需要手动输入 y 确认才能继续删除。如果你希望在不提示确认的情况下直接删除所有文件和子目录,可以使用 -f 选项,如下所示:

rm -r mydir

rm -f 用于强制删除指定文件或目录,即使该文件或目录被保护。在执行该命令时,不会提示任何确认信息,而是直接删除指定文件或目录。例如,你可以使用以下命令删除名为 myfile 的文件:

rm -f myfile

需要注意的是,在使用 rm -f 命令时,请务必谨慎操作,确保你想要删除的文件或目录是正确的,因为该命令可能会永久删除你的数据,无法恢复。

因此,rm -r 和 rm -f 命令都具有很强的删除能力,请谨慎选择并正确使用它们。

head

Head -num 文件的名字

head -2 test3.txt 展示test3.txt文件中的前两行的内容

tail

tail -f 动态显示文件的内容

find

根据名字进行查找

find 目录 -name 文件的名字

grep

grep 是 Linux 和 Unix 系统中的一个强大的命令行工具,用于在文件或标准输入中搜索指定的文本模式,并输出符合条件的行。它的基本语法如下:

grep [选项] 搜索模式 文件名 

其中,搜索模式 是要搜索的文本模式,可以是一个字符串、正则表达式或通配符;文件名 是要搜索的文件名。

例如,如果要在 /var/log/syslog 文件中查找包含字符串 error 的行,可以使用以下命令:

grep error /var/log/syslog

如果要忽略大小写并显示匹配行的行号,可以使用 -i 和 -n 选项:

grep -in error /var/log/syslog

如果要在多个文件中搜索,可以指定多个文件名,例如:

grep error file1.txt file2.txt file3.txt

此外,grep 还支持许多其他有用的选项和功能,例如递归搜索目录、输出匹配行前后的上下文等。

ps -ep

查看进程

tar压缩

tar 是 Linux 和 Unix 系统中的一个命令行工具,用于在文件和目录之间创建归档文件,并可以对归档文件进行压缩或解压缩。tar 的基本语法如下:

tar [选项] 归档文件名 文件或目录

其中,归档文件名 是要创建的归档文件的名称,文件或目录 是要添加到归档文件中的文件或目录。

例如,如果要将目录 /home/user/docs 打包为一个名为 docs.tar 的归档文件,可以使用以下命令:

tar -cvf docs.tar /home/user/docs

上面的命令中,-c 选项表示创建归档文件,-v 选项表示显示详细的输出信息,-f 选项指定了归档文件的名称。

如果要将归档文件解压缩到当前目录下,可以使用以下命令:

tar -xvf docs.tar

上面的命令中,-x 选项表示解压缩归档文件。

除此之外,tar 还支持许多其他有用的选项和功能,例如添加或删除文件、压缩或解压缩归档文件等。

vim

Vi(Visual Editor)和 Vim(Vi IMproved)都是文本编辑器,它们非常流行并且在许多 Unix 和 Linux 系统中都预装。

Vi 是最早的文本编辑器之一,最初是为 Unix 系统开发的。Vim 是 Vi 的增强版本,提供了更多功能和改进。事实上,Vim 是当前使用最广泛的 Vi 克隆之一。

Vi 和 Vim 的主要特点如下:

  • 模态编辑:Vi 和 Vim 采用模态编辑方式。它们分为命令模式、插入模式和底行模式。在命令模式下,可以执行各种编辑操作,如移动光标、复制、粘贴等。在插入模式下,可以输入文本。在底行模式下,可以输入一些命令,如保存文件、退出编辑器等。
  • 快捷键:Vi 和 Vim 使用许多快捷键来执行各种操作,如移动光标、删除文本、复制粘贴等。这些快捷键可以提高编辑效率。
  • 强大的编辑功能:Vi 和 Vim 提供了丰富的编辑功能,如查找替换、正则表达式支持、块选择、多窗口编辑等。
  • 可扩展性:Vim 支持插件和脚本,可以通过安装插件来增加编辑器的功能。

Vi 和 Vim 在使用上有一些区别,Vim 相对于 Vi 提供了更多的功能和改进,例如支持语法高亮、括号匹配、多级撤销等。因此,Vim 是更先进和强大的选择。不过,对于没有特定需求的用户,Vi 也是一个可用的文本编辑器。

需要注意的是,Vi 和 Vim 的学习曲线可能较陡峭,对于初学者来说可能需要一些时间来熟悉其操作和快捷键。但一旦掌握了基本知识,它们可以成为非常强大且高效的文本编辑工具。

:wq!强制退出

u查找

Dd复制

p粘贴

插入命令

i 在光标前插入

I 在光标当前行开始插入

a 在光标后插入

A 在光标当前行末尾插入

o 在光标当前行的下一行插入新行

O 在光标当前行的上一行插入新行

定位命令

:set nu 显示行号

:set nonu 取消行号

gg 到文本的第一行

G 到文本的最后一行

:n 到文本的第n行

$ 当前行的最后一个字符

替换和取消命令

u 取消上一步操作 Ctrl+r 返回到undo之前

r 替换光标所在处字符

R 从光标所在处开始替换,按esc结束

删除命令

x 删除光标所在字符

nx 删除光标所在处后n个字符

dd 删除光标所在行,ndd删除n行

dG 删除光标所在行到末尾行的所有内容

D 删除光标所在处到行尾的内容

:5,7d 删除指定范围的行,从第5行到第7行

常用快捷键

Shift+ zz 保存退出,与“:wq”作用相同

v 进入字符可视模式

V 或 Shift + v 进入行可视模式

Ctrl + v 进入块可视模式

复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。

将缓冲区内的字符贴到光标所在位置。

注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴 功能。

查找

用"/"加上要查找的内容.例如"/hello"或者是"?hello"也是可以的.

替换

「r」:替换光标所在处的字符。 ,按一下"r"然后输入要即可.

「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

恢复上一次操作

「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。

按多次"u"可以执行多次恢复.就相当于"CTRL +Z"的操作.

替换

在命令模式下使用“s/原字符/新字符/g” 代表当前行所有

如果想全局替换,s变为%s

文件内全部替换:

:%s#abc#123#g (如文件内有#,可用/替换,:%s/abc/123/g)

--注:把abc替换成123

(或者: %s/str1/str2/g 用str2替换文件中所有的str1)

文件内局部替换:

:20,30s#abc#123(如文件内有#,可用/替换,:%s/abc/123/g)

--注:把20行到30行内abc替换成123

创建组

groupadd -g 1172 qy172 添加分组

cat /etc/group 查看分组

groupdel tset2删除分组

4.修改用户的组

usermod -g 用户组 用户名

注:-g–gid,修改用户的gid,该组一定存在

多组:

usermod -G 组名,组名 用户名

usermod -G test,root yyl

5.给文件授权到组

-- change group premission

chgrp 组名 文件名

chgrp g1 /home/test

6.设置文件权限

chmod 770 /home/test

750

不能对目录里原有的文件进行操作

用数字来表示权限(r=4,w=2,x=1,-=0)

创建用户

1.常用选项:

-g:表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名

-G:表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名

-u:uid,用户的id(用户的标识符),系统默认会按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义

-c comment:添加注释

2.用户操作

useradd -g qy172 -u 77 -c 好人 qq 创建用户

userdel -r pp删除用户

passwd pp更改密码

su root切换用户

3.查看信息

ls /home查看用户

whoami查看当前使用的用户

cat /etc/passwd 查看用户信息

/etc/passwd 存储用户的关键信息

/etc/group 存储用户组的关键信息

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

grp qy172 /home/test qy172 组的成员将拥有对该目录的访问权限和控制权。

kill -9 14426杀死进程

日期

date查看日期

date "+%Y-%m-%d %H:%M:%S"

date -d "-1 year" "+%Y-%m-%d %H:%M:%S"

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 用上海日期覆盖本地的美国日期

总结:

增 目录 mkdir,文件touch,组groupadd,用户useradd

删rm -rf ,groupdel,userdel,

改cp ,mv, groupmod,usermod

查ls,ll,cat,more,head,tail,cat /etc/group, ls /home查看用户

grep管道

vi

vim也有增删改查

你可能感兴趣的:(linux,服务器,运维)