Linux基础(一)— 初学者常用指令

Linux基础:初学者常用指令
温馨提示:适合初学者也适合其他阶段学习者



一、Linux文件和目录相关命令

文件系统层次结构标准FHS

/ bin: bin是二进制( binary )英文缩写。
/ boot : 存放的都是系统启动时要用到的程序。
/ dev: 包含了所有Linux系统中使用的外部设备。
/ etc: 存放了系统管理时要用到的各种配置文件和子目录
/ lib: 存放系统动态连接共享库的。
/ home : 普通用户的主目录
/ root: 根用户(超级用户)的主目录

man     查看命令符的帮助

man xx 查看xx命令符的帮助
man ls
man pwd

cd        切换

cd xxx 切换(切换去xxx)
cd … 返回上一级(cd+空格+…)

pwd     打印当前路径位置

df -t     显示此文件系统的信息

ls         显示当前目录下文件内容

ls [options] [files_or_dir] ls [选项] [文件_or_目录]
ls xxx/ 打印显示xxx目录下文件(人在门外看屋内)
ls -a 列出所有文件,包括隐藏文件
ls -l 以详细列表形式,列出所有文件的信息。 如:显示文件名称、日期、类型、大小等
ls -R xxx 打印显示当前目录下或者任意子目录中包含xxx名称的所有文件

cp        复制(copy)

cp [options] file destination
cp [options] file1 file2 dest
-i 覆盖时交互提示
-r 对文件夹递归
-a 将目录备份成另一个目录名称
cp text.c text/ 把text.c文件复制到text目录中
cp test.c …/ 把test.c文件复制到上一级(相对路径)
cp test.c /home/linux 把text.c文件复制到linux目录中(直接路径)
cp test.c …/bak.c 在上一级创建新的bak.c目录,并把text.c复制到bak.c当中
cp -r xxx/ xx 加 -r 把xxx文件夹复制到xx中
cp test.c …/ -i 提示是否覆盖原文件 答:y(是) n(否)

touch    创建文件或更新时间戳

touch xxx.c 创建xxx.c文件;在有xxx.c文件的情况下重复touch xxx.c 是更新时间戳;
touch 文件名{后缀1,后缀2,后缀3} : 创建多个文件 ----例:touch a{1,2,3}.c // 同时创建a1.c,a2.c,a3.c

rm        删除文件(remove)

rm [options]
rm file -i 删普通文件(加 -i 是为了有交互)
rm -r directory 删文件夹
rm -rf 文件和文件夹都可删除

mv       剪切(move)(移动)+ 重命名

mv [options] file destination
mv [options] file file2 destination 移动多个文件
mv test.c …/
mv test.c … 移动到上一级
mv xx.c xxx.c 重命名 把xx.c改名为xxx.c
mv xx.c …/xxx.c 移动+重命名

mkdir    新建一个目录(make directory)

单独分步创建:↓
mkdir xxx 在当前文件夹创建xxx文件夹
mkdir xxx/xx 在xxx文件夹下创建xx文件夹
级联创建:↓
mkdir -p xxx/xx 直接创建生成xxx文件夹和xxx文件夹下的xx文件夹

cat       查看文件内容(代码)(只能看不能编辑)

cat xxx.c
cat -s 多个空行合并成一个空行显示
cat -b 加行号显示
head -n 显示前n行,不加-n默认显示10行
tail -n 显示后n行,不加-n默认显示10行

head    从文件头显示指定的行数(默认显示前10行)

格式:hand -nline filename
head xxx.c
head -xx xxx.c

vi         编辑文件内容

vi xxx.c 编辑xxx.c文件内的内容(代码)

wp       返回

clear    清除桌面

二、vi编辑器的使用

vi 模式切换命令

i 光标左边开始编辑
a 光标右边开始编辑(追加)
I 光标移动至行首
A 光标移动至行尾
o(小写) 光标移动到新的下一行行首
O(大写) 光标移动到新的上一行行首
:! Command 执行外部命令,再按Enter即可回到原界面
:! pwd 在命令模式下查看当前位置
:! date 在命令模式下查看时间

vi 拷贝与粘贴命令

[n]yy 复制从光标开始的连续n行
[n]dd 剪切从光标开始的连续n行
[n]x 剪切从光标开始的连续n个字
p(小写) 粘贴到光标新的下一行
[n]p n倍复制
P(大写) 粘贴到光标新的上一行
u 撤销

vi 保存和退出命令

:w 保存文件
:x 和 :wq 保存文件并退出
:q 退出 (不保存)
:q! 强制退出(不保存)
:w File 另存与File给出的文件名,不退出
:r File 把File文件里的内容(代码)拷贝到当前文件中

vi 替换命令

: s/str1/str2/ 当前行str1替换str2
: s/str1/str2/g g代表全文替换(不加g默认替换第一个)
:n,N s/str1/str2/g 第n行到第N行 如::10,15 s/str1/str2/g
:.,$ s/str1/str2/g 当前行到最后1行
:1,$ s/str1/str2/g 第1行到最后1行(全文替换)
:%s/str1/str2/g 全文替换

vi 光标命令

:n 移动光标到第n行
1G / gg 移动光标到文件的第1行
G 移动光标到文件的最后1行
:set number 设置显示行号(代码前面的行数)
:set nonumber 取消显示行号

vi 复制和剪切命令

y0 从光标到行首内容复制
y$ 从光标到行尾内容复制
d0 从光标到行首内容剪切
d$ 从光标到行尾内容剪切
: range y 范围复制
如:n,N y
:1,10 y
:.,$ y
:% y
: range d 范围剪切
:n,N d
:1,10 d
:.,$ d
:% d

vi 的查找命令

/ 查找指令

例如:/xxxx 查找有关xxxx的字符串

n 继续查找
N 反向继续查找
支持正则表达式比如: /^the /end$

基础知识

数据的表示

三、程序的编译和调试

gcc 编译

①gcc xxx.c -o xxx ② ./xxx 输入gcc xxx.c -o xxx后生成一个指定xxx可执行文件,再输入 ./xxx 即可显示打印结果 例如:①gcc test.c -o test ② ./test
①gcc xxx.c -o xxx -Wall ② ./xxx 加-Wall是为了显示多一些警告 ①gcc test.c -o test -Wall ② ./test
①gcc xxx.c ②./a.out 不加 -o 默认生成a.out可执行文件,在输入 ./a.out 显示打印结果

程序调试

FILEFUNCTIONLINE 用来反馈打印结果的内容源代码在 哪个文件位置、哪个函数位置、第几行位置

四、其他常用辅助指令

vsp 打开一个新的对称分屏文件
ctrl + L 清屏
ctrl + alt + t 打开主目录下新的命令窗口
ctrl + shift + n 打开当前目录下新的命令窗口
ctrl + shift + t 打开当前目录下新的标签
ctrl + shift + + 增大字体
ctrl + - 减小字体
shift + v + 上下选择范围 + ,+ cc 注释
shift + v + 上下选择范围 + ,+ cu 取消注释
man ascii 打开查看ASCII表
gcc -E bool.c -o bool.i 指对宏的展开

五、其他指令

立即开机和重启

sudo shutdown -h now 系统立即关机
sudo shutdown -r now 系统立即重新启动
sudo reboot now 系统立即重新启动
sudo shutdown -h + 45 “That is all , game over!” 定时45分钟后关机–(后面的英文为可(自定义)的提示语)
sudo shutdown -h + 60 定时60分钟后关机
sudo init 0 系统立即关机
sudo init 6 系统立即重启
sudo poweroff 系统立即关机
sudo poweron 系统立即重启

猜你喜欢

转载自blog.csdn.net/weixin_50019298/article/details/114357221