1)VI是一个功能强大的文本编辑器(两个模式)(为创建文档,并对文档内容编写)
1.1)命令行模式:默认此模式,从输入模式回到命令行模式,运用:esc(标志 insert消失)
1.2)输入模式:按i(insert)进入,看到insert就可以输入代码。
1.3)命令行指令运用
- 光标移动:
- 使用
h
、j
、k
、l
分别向左、下、上、右移动光标。例如,要将光标向下移动一行,可以按j
键。Ctrl + f
和Ctrl + b
分别用于向前(向下)和向后(向上)翻页。Ctrl + d
和Ctrl + u
也可以用于向下和向上翻页,但翻页的幅度相对较小。- 文本删除:
x
用于删除光标所在位置的字符。例如,要删除一个多余的字符,将光标移到该字符上,然后按x
键。dd
用于删除整行。如果要删除当前行,直接按dd
即可。- 文本复制和粘贴:
yy
用于复制当前行。复制后,可以使用p
(在光标下方粘贴)或P
(在光标上方粘贴)来粘贴文本。例如,复制一行后,按p
会将复制的内容粘贴到当前行的下一行。- 撤销和恢复操作:
u
用于撤销上一步操作。如果不小心删除了不该删除的内容,按u
可以恢复。Ctrl + r
用于恢复被撤销的操作- 保存文件:
:wq
用于保存文件并退出vi
。这是一个常用的组合命令。:w
用于保存文件。如果是新文件,需要指定文件名,例如:w newfile.txt
会将当前内容保存为newfile.txt
。
2)gcc编译工具,运用—例如:gcc a.c -o.a 意义为:编译名为a.c的代码,生成名为a的程序。
3)运行 (./程序名)
4)linux常用指令:(超级重要)
4.1)文件操作指令
- cp:用于复制文件或目录。
- 语法格式:
cp [选项] 源文件或目录 目标文件或目录
- 示例:将文件
test.txt
复制到/home/user
目录下,cp test.txt /home/user
。若要复制目录及其所有内容,加上-r
选项,如cp -r /source/dir /destination/dir
。- mv:可移动文件或目录,也可用于重命名。
- 语法格式:
mv [选项] 源文件或目录 目标文件或目录
- 示例:将
file.txt
移动到new_dir
目录中,mv file.txt new_dir
。将old_name.txt
重命名为new_name.txt
,mv old_name.txt new_name.txt
。- rm:删除文件或目录。
- 语法格式:
rm [选项] 文件或目录
- 示例:删除
test.txt
文件,rm test.txt
。删除目录及其所有内容需加-r
选项,如rm -r my_dir
。谨慎使用rm -rf
,它会强制删除且不提示确认。- cat:查看文件内容,常用来显示短小文件的内容。
- 语法格式:
cat [选项] 文件
- 示例:查看
example.txt
的内容,cat example.txt
。若要查看文件并显示行号,使用cat -n example.txt
。- more:分屏显示文件内容,适合查看较长文件。
- 语法格式:
more [选项] 文件
- 示例:查看
large_file.txt
,more large_file.txt
。按空格键向下翻页,按 Enter 键向下滚动一行。- less:与
more
类似,但功能更强大,可向上或向下滚动查看文件。
- 语法格式:
less [选项] 文件
- 示例:查看
big_file.log
,less big_file.log
。使用PageUp
和PageDown
键上下翻页,使用/
进行搜索。- grep:在文件中搜索指定的字符串。
- 语法格式:
grep [选项] '搜索字符串' 文件
- 示例:在
test.txt
中搜索包含hello
的行,grep 'hello' test.txt
。若要进行不区分大小写的搜索,加上-i
选项,即grep -i 'hello' test.txt
。4.2)目录操作指令(目录=文件夹)
- mkdir:创建目录。
- 语法格式:
mkdir [选项] 目录名
- 示例:创建一个名为
new_dir
的目录,mkdir new_dir
。若要创建多级目录,使用-p
选项,如mkdir -p parent_dir/child_dir/grandchild_dir
。- rmdir:删除空目录。
- 语法格式:
rmdir [选项] 目录名
- 示例:删除
empty_dir
目录,rmdir empty_dir
。若要删除多级空目录,可使用-p
选项,rmdir -p parent_dir/child_dir/grandchild_dir
。- cd:切换目录。
- 语法格式:
cd [目录路径]
- 示例:切换到
/home/user
目录,cd /home/user
。返回上一级目录,cd..
。回到用户主目录,cd
或cd ~
。- pwd:显示当前工作目录。
- 语法格式:
pwd
- 示例:直接执行
pwd
,会输出当前所在的完整路径,如/home/user/current_dir
。- ls:列出目录内容。
- 语法格式:
ls [选项] [目录]
- 示例:列出当前目录下的文件和目录,
ls
。列出所有文件,包括隐藏文件,使用ls -a
。以长格式列出详细信息,ls -l
,常组合使用为ls -al
。4.3)用户管理指令
- useradd:创建新用户。
- 语法格式:
useradd [选项] 用户名
- 示例:创建一个名为
newuser
的用户,useradd newuser
。若要指定用户的主目录,可使用-d
选项,如useradd -d /home/newuser newuser
。- passwd:设置或修改用户密码。
- 语法格式:
passwd [用户名]
- 示例:普通用户执行
passwd
可修改自己的密码。root 用户可以通过passwd username
修改指定用户的密码,如passwd newuser
。- userdel:删除用户。
- 语法格式:
userdel [选项] 用户名
- 示例:删除用户
olduser
,userdel olduser
。若要同时删除用户的主目录及相关文件,使用-r
选项,即userdel -r olduser
。- su:切换用户身份。
- 语法格式:
su [选项] [用户名]
- 示例:从普通用户切换到 root 用户,
su
,输入 root 密码即可。若要切换到指定用户user1
,su user1
。加上-
选项可切换用户并同时切换到该用户的环境,如su - user1
。4.4)权限管理指令
- chmod:改变文件或目录的权限。
- 语法格式:
chmod [选项] 权限模式 文件或目录
- 示例:将文件
test.txt
的权限设置为所有者可读、写、执行,组用户和其他用户可读、执行,chmod 755 test.txt
。也可使用符号模式,如chmod u+rwx,g+rx,o+rx test.txt
。- chown:更改文件或目录的所有者和所属组。
- 语法格式:
chown [选项] 所有者:组 文件或目录
- 示例:将
file.txt
的所有者改为user1
,所属组改为group1
,chown user1:group1 file.txt
。若只更改所有者,chown user1 file.txt
。4.5)系统信息查看指令
- uname:显示系统信息。
- 语法格式:
uname [选项]
- 示例:显示内核名称,
uname -s
。显示内核版本,uname -r
。若要显示所有信息,使用uname -a
。- top:实时显示系统中各个进程的资源占用情况。
- 语法格式:
top
- 示例:直接执行
top
命令,进入交互界面,可按q
键退出。界面中会显示系统的 CPU、内存使用情况以及各个进程的详细信息。- df:查看磁盘空间使用情况。
- 语法格式:
df [选项]
- 示例:以人类可读的格式显示磁盘使用情况,
df -h
。会列出各个文件系统的总容量、已使用量、可用量等信息。- free:查看系统内存使用情况。
- 语法格式:
free [选项]
- 示例:以人类可读的格式显示内存使用情况,
free -h
。可看到物理内存、交换空间的总量、已使用量和空闲量等信息。- tab:自动补全,当文件名太长时,写前几个字符,按tab键自动补全。