博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信:pcwl_Java 一起交流秋招面试经验,可获得博主的秋招简历和复习笔记。
Linux 实现的就是基于核心轻量级进程的"一对一"线程模型,一个线程实体对应一个核心轻量级进程,而线程之间的管理在核外函数库中实现。
GDI 类为图像设备编程接口类库。
绝对路径: 如:/etc/init.d
当前目录和上层目录:./ ../
主目录:~/
切换目录:cd
查看当前进程:ps
执行退出:exit
查看当前路径:pwd
清屏:clear
退出当前命令:ctrl+c 彻底退出
执行睡眠 :ctrl+z 挂起当前进程 fg 恢复后台
查看当前用户 id:”id“:查看显示目前登陆账户的 uid 和 gid 及所属分组及用户名
查看指定帮助:如:man adduser,常用参数; info adduesr。
ls 执行的功能:列出指定目录中的目录,以及文件
哪些参数以及区别:a 所有文件详细信息,包括大小字节数,可读可写可执行的权限等。
软链接: ln -s slink source
硬链接: ln link source
创建目录:mkdir
创建文件:典型的如 touch,vi 也可以创建文件,其实只要向一个不存在的文件输出,都会创建文件
复制文件:cp
文件权限修改:chmod
chomd 格式如下:
-------------------------
$ chmod u+x file 给 file 的属主增加执行权限
$ chmod 751 file 给 file 的属主分配读、写、执行(7)的权限,给 file 的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
$ chmod u=rwx,g=rx,o=x file 上例的另一种形式
$ chmod =r file 为所有用户分配读权限
$ chmod 444 file 同上例
$ chmod a-wx,a+r file 同上例
$ chmod -R u+r directory 递归地给 directory 目录下所有文件和子目录的属主分配读的权限
vi 文件名:编辑方式查看,可修改。
cat 文件名:显示全部文件内容。
more 文件名:分页显示文件内容。
less 文件名:与 more 相似,更好的是可以往前翻页。
tail 文件名:仅查看尾部,还可以指定行数。
head 文件名:仅查看头部,还可以指定行数。
写文件命令:vi。
/dev/tty
/dev/null
cp
cp -r
rm
rm -r
rmdir
“?”可替代单个字符。
“*”可替代任意多个字符
方括号“[charset]”可替代 charset 集中的任何单个字符,如[a-z],[abABC] 15
wc 命令 - c 统计字节数。 - l 统计行数。 - w 统计字数。
是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。
grep [stringSTRING] filename grep [^string] filename
1、不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。不可中断, 指进程不响应异步信号。
2、暂停状态/跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个特殊的状态。“正在被跟踪”指的是进程暂停下来,等待跟踪它的进程对它进行操作。
3、就绪状态:在 run_queue 队列里的状态。
4、运行状态:在 run_queue 队列里的状态。
5、可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如等待 socket 连接、等待信号量),而被挂起。
6、zombie 状态(僵尸):父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉。
7、退出状态。
D 不可中断 Uninterruptible(usually IO)
R正在运行,或在队列中的进程
S处于休眠状态
T停止或被追踪
Z僵尸进程
W进入内存交换(从内核 2.6 开始无效)
X死掉的进程
ps -ef (system v 输出)
ps -aux bsd 格式输出
ps -ef | grep pid
fg
例如:#jobs [1]+ Running /root/bin/rsync.sh &
#fg 1 bg 类似
kill -9 pid
kill -l
w 用户名称;用户的机器名称或 tty 号;远程主机地址;用户登录系统的时间;空闲时间(作用不大);附加到 tty(终端)的进程所用的时间(JCPU 时间);当前进程所用时间(PCPU时间);用户当前正在使用的命令。
who 用户名、tty 号、时间日期、主机地址。
who am i,id -un 命令用于显示登入的用户名。
last 命令可用于显示特定用户登录系统的历史记录(last jason):用户名称;tty 设备号;历史登录时间日期;登出时间日期;总工作时间。
查找自己所在终端信息:who am i。
查看所有env
查看某个,如 home: env $HOME
u 显示当前用户账号 h 显示当前主机名。
W 只显示当前路径最后一个目录 w 显示当前绝对路径(当前用户目录会以 ~代替) $PWD 显示当前全路径 $ 显示命令行’$'或者’#'符号 # :下达的第几个命令。
d:代表日期,格式为 weekday month date,例如:"Mon Aug 1"。
t:显示时间为 24 小时格式,如:HH:MM:SS T :显示时间为 12 小时格式 A :显示时间为 24小时格式:HH:MM v :BASH 的版本信息。 如export PS1=’[u@h w#]$ 。
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。
-b:只查找二进制文件。
-B:<目录> 只在设置的目录下查找二进制文件。
-f:不显示文件名前的路径名称。
-m:只查找说明文件。
-M:<目录> 只在设置的目录下查找说明文件。
-s: 只查找原始代码文件。
-S:<目录> 只在设置的目录下查找原始代码文件。
-u: 查找不包含指定类型的文件。
which 指令会在 PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
-n: 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p与-n:参数相同,但此处的包括了文件的路径。
-w:指定输出时栏位的宽度。
-V:显示版本信息。
which 只能查可执行文件。
whereis 只能查二进制文件、说明文档,源文件等。
df:显示每个<文件>所在的文件系统的信息,默认是显示所有文件系统。(文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如 i节点,磁盘分布图,间接块,超级块等。这些数据对大多数用户级的程序来说是不可见的,通常称为 Meta Data)
du: 命令是用户级的程序,它不考虑 Meta Data,而 df 命令则查看文件系统的磁盘分配图并考虑 Meta Data。
df 命令获得真正的文件系统数据,而du命令只查看文件系统的部分情况。