Linux操作命令个人学习

bin(binary):存放二进制文件(普通命令)
etc:存放系统配置文件
lib(library):存放库文件
sbin(super binary):存放只有root用户才能使用的命令
usr:存放用户安装的软件包
home:普通用户的家目录
root:root用户的家目录
pro、sys:存放内核信息
dev(device):存放设备文件

/home/test1 /etc/a 绝对路径
cd test1/aa/t1 相对路径

ls 显示文件
ls -a 显示所有文件包括隐藏文件
ls -l 显示文件属性
ls 路径 显示指定路径下的文件 ls -al /usr

cd 路径 进入指定目录
cd 进入家目录
cd ~ 同上
cd - 回到上一次工作路径
cd . 进入当前目录
cd … 进入上一级目录

cp 源路径 目的路径 复制普通文件 cp /etc/vim/vimrc /home/ cp /etc/vim/vimrc .
cp -r 源路径 目的路径 复制目录 cp -r /usr/local/ .

mv 源路径 目的路径 剪切
mv oldname newname 修改文件名 mv vimrc xx
rm -rf 文件名或者目录名 彻底删除 rm -rf xx local/ (xx为文件名 local为目录名)

touch 文件名 添加文件 touch abcd

文件的权限

  • rw-r- -r- -
  •   表示什么文件(文件、文件夹、链接文件、管道文件)
    

rw- 当前用户属性
r-- 同组其他用户的权限
r-- 其它用户权限

ls -l abcd 查看属性
-rw-r–r--
(表示0110100100)即644
chmod 764 abcd -rw-r–r--执行后变为 -rwxr–r--
chmod o+w abcd 修改abcd文件其它用户的权限 -rw-r–r--改成了-rwxrw-rw-

mkdir 文件夹名 添加文件夹名称

tar -zcf 压缩名.tar.gz 文件名 文件夹名 压缩文件或者文件夹
tar -xzf 压缩名.tar.gz 解压缩

find /usr/ -name “stdlib.h” 查找文件
grep “eth0” /etc/network -R 找关键字

vim编辑器
vim 文件名创建新文件 (vim 文件名创建后按insert键进入插入模式写文件)
gcc hello.c -o hello (运行文件)

插入模式 a(append) i(insert) ESC退出插入模式
命令模式(打开文件) X删除一个字符 nX删n个字符(n为数字键) U撤销之前的操作 DD剪切一行 nDD剪切n行

P粘贴 YY复制 nYY复制n行 shift+G到最后一行 GG回到第一行
*(shift+8)光标闪烁位置的关键字查找

底行模式 : 进入底行模式 :wq保存退出 :w保存 :q退出 :wq!强制保存退出 数字直接跳到某行
set nonu 去除行号 set nu 添加行号
/进入底行模式(搜索)n向下搜索 shift+n向上搜索 :sp 文件名 打开另一个文件 ctrl+W+W 跳转文件

gcc工具链 可以交叉运行
编译步骤
1、预处理 gcc -E hello.c -o hello.i(处理所有以#开头)
2、编译 语法检查 把C代码变成汇编语言 gcc -S hello.c -o hello.s
3、汇编 gcc -c hello.s -o hello.o 把汇编代码变成二进制文件
4、连接 gcc hello.o -o hello
连接需要用到的其他文件

制作静态库
1、编写main.c f1.c f2.c
2、把f1.c f2.c变成二进制文件 gcc -c f1.c f2.c
3、把.o文件变成静态库 ar -crv libxx.a f1.o f2.o
4、编译主函数
gcc main.c -o main-static -L . -lxx -static

制作动态库
1、编写三个文件f1.c f2.c main.c
2、把f1.c f2.c做成动态库
gcc -fPIC -shared -o libxxx.so f1.c f2.c
3、动态编译main.c
gcc main.c -o main -L . -lxxx
4、把动态库复制到指定目录中
cp libxxx.so /usr/lib
5、执行文件 ./main

make和MakeFile


gbd调试工具
gcc -g main.c -o main.out //生成编译文件
gdb ./main.out //进入gdb 如不行 则删除编译文件重新生成编译文件
l //列出十行源代码 list
start //开始单步调试
p 变量名 //例如:p num //显示变量num的数值
n //跳下一行执行 next
s //进行该行的函数执行 step


Shell使用基础

	#!/bin/bash

	STR="this is shell script"

	echo "hello world"

	echo $STR    //输出变量  $1表示第一个参数 以此类推

chmod +x 1.sh (设置1.sh拥有执行权限)
./1.sh (执行文件内容)

ps -elf 查看进程
fg 切换前台
ps -elf | grep getpid 查看getpid进程

ctrl+c 结束进程
ctrl+z 切换后台

音乐播放器简单操作
父进程 接收消息
子进程 等待孙进程结束,回收资源
孙进程 播放音乐

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风华绝代飞入鬓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值