《linux实例大全》学习笔记1

1-3章

自动补齐

$跟环境变量  ~跟用户名  @跟主机名

man命令 -f xxx 可以显示出所有xxx的文档,比如有的是c的有的是sh的。类似whatis

[[email protected] ~]# man -f mkdir
mkdir                (1)  - make directories
mkdir                (1p)  - make directories
mkdir                (2)  - create a directory
mkdir                (3p)  - make a directory

然后可以用man 3p mkdir来看具体的

-k是搜索所有包含xxx的

[[email protected] ~]# man -k fopen
TIFFClientOpen [TIFFOpen] (3tiff)  - open a TIFF file for reading or writing
TIFFFdOpen [TIFFOpen] (3tiff)  - open a TIFF file for reading or writing
TIFFOpen             (3tiff)  - open a TIFF file for reading or writing
fdopen [fopen]       (3)  - stream open functions
fopen                (3)  - stream open functions
fopen                (3p)  - open a stream
freopen [fopen]      (3)  - stream open functions

whereiswhitch都可以查找命令的路径。whereis更全面一点。

date +%s 打印时间戳

fuser -a 目录可以看该目录启动的所有进程

-k可以删除该目录下所有的进程

gdialog linux里面的安装程序对话框都可以实现,不过似乎不能组合用,比如yesno不能和textbox用,不能既能选yesno也能从文本里面读说明。

如果是输入框或者菜单类,那么可以用2>>1.log输入到日志里面,无论是inputbox或者菜单类都不自动换行。

菜单和单选都是输出第一项。多选很奇怪,输出的第一项但是外面多了""

hostname 后面跟名字可以修改主机名。

jobs 只能显示本连接的后台程序(后缀&的),其他连接的后台程序看不见。

fg 可以把jobs里面的内容从后往前出现在前台。

 write root pts/1 给其他连接发信息,其他连接会屏幕打印出来。可以用who看其他终端的pts编号。

ps -C httpd -o pid= 可以显示指定进程的pid,可以不用awk再匹配了。

pmap 进程号 可以看这个进程使用到的库占用的内存,不过有个[ anon ]不知道什么意思 - -

yes|rm *可以实现rm -rf * 功能,其他组合想到再记下。

fc -l可以看见本连接的操作命令,fc 行号开始 行号结尾,可以vi编辑,然后自动运行编辑后的结果。

pgrep pkill 不完全匹配找进程,-x是完全匹配。

pidof 显示所有该名程序的进程,完全匹配。

watch 可以定期执行程序,全屏刷新屏幕。

alias 给命令定义别名,如果alias ll=ls -a等,只有本连接才有效。

declare 显示所有环境变量的值。

ldd 显示程序依赖那些库。

第四章

/etc/passwd 里面第二位是密码,不过现在都在/etc/shadow,不过都是md5加密后的密码,密码是!的表示用户被锁定不能登录,passwd -l 用户名实现。

userdel -r 删除用户同时删除文件。

忘记root密码可以使用单用户模式来进入系统,然后把shadow的密码删除。

系统启动时回车进入GRUB界面,选择kernel /vmlinuz-xxxx ro root=LABLE=/ 输入single 返回上级菜单按b启动命令。

同样组设置在/etc/group 和/etc/gshadow里面。

当一个用户属于多个组时,登录后只属于一个组,可以使用newgrp切换组。

ac显示登录总时间,-p按用户统计,-d对连接几天进行统计。

last显示最近的登录情况

lastd显示最近的登录失败情况。话说公网的机器被扫的很严重啊,我一起在公网的机器给了密码123456,第二天就被人改了密码了。用lastd看看,一堆尝试登录的ip 。

who显示登录用户信息。

w显示登录用户信息和ip以及进行的操作。不过大部分正常操作都会是hash

whoami显示自己的用户名。

logname显示自己的用户名。

finger 当前用户的相关登录信息,加用户名是该用户信息,比如目录等。

id 显示某用户所属的所有组。

rwho看局域网用户,不过不是很清楚,如果是公网地址,那么不都等于局域网吗?但是公网是不显示的。但是我在局域网试了个机器,也没有任何显示,真奇怪。

users显示所有登录用户的用户名

如果存在/etc/nologin  那么禁止所有非root用户登录。

时间: 2024-08-29 07:45:15

《linux实例大全》学习笔记1的相关文章

C专家编程学习 1

1.C语言的基本数据类型直接与底层硬件相对应. 2#define 是可能出现问题 1 2 3 4 5 #define a(y) a_ex(y) a(x)被扩展为 a_ex(x) #define a (y) a_ex(y) a(x)被扩展为 (y) a_ex(y)(x) #define宏的用法 1.简单宏定义 1 #define a y 将文件中的 a 全部换成 y 为了避免出现问题,要将宏展开,根据运算符的优先级判断是否是需要的运算顺序. 2.带参数的宏定义 1 2 #define a(y) a

Java并发编程学习笔记

Java编程思想,并发编程学习笔记. 一.基本的线程机制 1.定义任务:Runnable接口 线程可以驱动任务,因此需要一种描述任务的方式,这可以由Runnable接口来提供.要想定义任务,只需实现Runnable接口并编写run方法,使得该任务可以执行你的命令.   class MyTask implements Runnable {    private String mName;     public MyTask(String name) {    mName = name;   }  

Linux Shell脚本编程学习笔记和实战

http://www.1987.name/141.html shell基础 终端打印.算术运算.常用变量 Linux下搜索指定目录下特定字符串并高亮显示匹配关键词 从键盘或文件中获取标准输入 [read命令] 文件的描述符和重定向 数组.关联数组和别名使用 函数的定义.执行.传参和递归函数 条件测试操作与流程控制语句 获取时间日期格式和延时 [date.sleep命令] 内部字段分隔符IFS和脚本的调试DEBUG 显示.读取或拼接文件内容 [cat命令] 文件查找与打印文件列表 [find命令]

linux网络编程学习笔记之二 -----错误异常处理和各种碎碎(更新中)

errno 在unix系统中对大部分系统调用非正常返回时,通常返回值为-1,并设置全局变量errno(errno.h),如socket(), bind(), accept(), listen().erron存放一个正整数来保存上次出错的错误值. 对线程而言,每个线程都有专用的errno变量,不必考虑同步问题. strerror converts to English (Note: use strerror_r for thread safety) perror is simplified str

JAVA GUI编程学习笔记目录

1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之GUI编程窗体事件 6.JAVA之GUI编程Action事件 7.JAVA之GUI编程鼠标事件 8.JAVA之GUI编程键盘码查询器 9.JAVA之GUI编程列出指定目录内容 10.JAVA之GUI编程弹出对话框Dialog 11.JAVA之GUI编程菜单 12.JAVA之GUI编程打开与保存文件 13.JAVA之GUI编程将程序打包jar JA

黑马程序员_JAVA UDP网络编程学习笔记

一.UDP网络编程概述 采用TCP协议通信时,客户端的Socket必须先与服务器建立连接,连接建立成功后,服务器端也会持有客户端连接的Socket,客户端的Socket与服务器端的Socket是对应的,它们构成了两个端点之间的虚拟通信链路.与TCP通信不同,UDP是面向无连接的.不可靠的基于数据包的传输协议.即应用进程(或程序)在使用UDP协议之前,不必先建立连接.自然,发送数据结束时也没有连接需要释放.因此,减少了开销和发送数据之前的延时.UDP也采用端口来区分进程. 在java中,java.

Java并发编程学习笔记(一)线程安全性 1

什么是线程安全性: 要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问."共享"意味着变量可以由多个线程同时访问,而"可变"则意味着变量的值在其生命周期内可以发生变化. 一个对象是否需要线程安全的,取决于他是否被多个线程访问.这指的是在程序中访问对象的方式,而不是对象要实现的功能.要使得对象时线程安全的,需要采用同步机制来协同对对象可变状态的访问.如果无法实现协同,那么可能导致数据破坏以及其他不该出现的结果. 如果当多个线程访

FFmpeg编程学习笔记一

FFmpeg编程学习笔记一 1.为了学习ffmpeg编程需要单步调试,参照网上的教程用VS2013编译一次成功,之后随便写了个重采样音轨小程序,也就是把一个5.1声道的AC3文件分解成6个WAV文件的简单功能. 2.编译成功执行也正常,但速度奇慢,比同类软件eac3to慢了约5倍. 3.OK上网搜搜咋回事,一天,二天过去了无果. 4.无奈用VS2013的性能与诊断,分析出最占用时间的函数调用具然是:swr_convert参数里的lrintf() lrint() llrint() llrintf(

Android Socket编程学习笔记

通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.在Internet上的主机一般运行了多个服务软件,同时提供几种服务.每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务. 网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket.Socket通常用来实现客户方和服务方的连接.Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定. 在java中,Socke

linux网络编程学习笔记之六 -----I/O多路复用服务端

多进程和多线程的目的是在于最大限度地利用CPU资源,当某个进程不需要占用太多CPU资源,而是需要I/O资源时,可以采用I/O多路复用,基本思路是让内核把进程挂起,直到有I/O事件发生时,再把控制返回给程序.这种事件驱动模型的高效之处在于,省去了进程和线程上下文切换的开销.整个程序运行在单一的进程上下文中,所有的逻辑流共享整个进程的地址空间.缺点是,编码复杂,而且随着每个逻辑流并发粒度的减小,编码复杂度会继续上升. I/O多路复用典型应用场合(摘自UNP6.1) select的模型就是这样一个实现