Linux常用函数总结-2

1: 系统调用:打开一个文件

函数原型 头文件 参数 : : int open(const char pathname, info flage, /* mdode_t m) #include <unistd.h> #include <fcntl.h> #include <sys/stat.h> 1> 下面三个常量只能选用一个: O_RDONLY, O_WRONLY, O_RDWR 2> O_CREAT : 如果文件不存在,则创建此文件,选用 个参数时,必须同时指定mode参数 3> O_SYNC : 最严格的同步方式,每次write操作在 数据和属性都协议时再返回 : flag

2:系统调用 : 改变文件的所有者

1> 函数原型 : int chown(cont char *path, uid_t uid, gid_t gid) ;

3:系统调用 : 创建连接

1> 函数原型 : int link(const char *existPath, const char *newPath) ; 2> 头文件 : #include <unistd.h>

3> 参数 : existpath : 已经存在的文件

4> 返回值 newpath : 新的文件 : 略 4:系统调用 : 删除一个文件 int fchown(int fd, uid_t uid, gid_t gid) ; int lchown(int fd, uid_t uid, gid_t gid) ; 2> 头文件 3> 参数 4> 返回值 : #include <unistd.h> #include <sys/types.h> : 略 : 略

5> 备注 : 如果newpath已经存在,则失败

4:系统调用 : 删除一个文件

5:标准函数 : 重命令函数

1> 函数原型 : int rename(const char *oldname, const char *newname) ;

2> 头文件 3> 参数 : #include <stdio.h> : 略 1> 函数原型 : int unlink(const char *path) ; 2> 头文件 : #include <unistd.h> 3> 参数 4> 返回值 5> 备注 : 略 : 略 : 调用的函数的结果是使得文件的inode-1,如果i_node=0 则自动删除文件数据区

4> 返回值 : 略

6:系统调用 : 读连接文件内容函数

2> 头文件 3> 参数 4> 返回值 : #include <unistd.h> : 略 : 略 7:系统调用 : 新建一个目录 : #include <sys/types.h> #include <sys/stat.h> : 略 : 略 1> 函数原型 : int mkdir(const char *pathname, mode_t mode) ; 2> 头文件 3> 参数 4> 返回值

8:系统调用 : 删除一个空目录

1> 函数原型 : int rmdir(const char *pathname) ;

2> 头文件 3> 参数 : #include <unistd.h> : 略

4> 返回值 : 略

9:其他函数 : 得到文件名最大长度函数

1> 函数原型 : int pathconf(const char *relativePath, int parameters) ; 2> 头文件 3> 参数 4> 返回值

: #include <limits.h> : reletivePath :相对路径,一般取‘/’ parameters :=_PC_PATH_MAX : 返回本系统支持的最大文件名称长度 : 改变当前工作目录函数 10:系统调用

1> 函数原型 : int chdir(cont char *pathname) ; 2> 头文件 : #include <unistd.h> 3> 参数 : 略 4> 返回值 : 略

11:系统调用 : 得到的当前工作目录函数

1> 函数原型 : char* getcwd(char *buf, int size) ;

12:系统调用

: 同步函数(两个) 1> 函数原型 : void sync(void) ; int fsync(int fd) ; 2> 头文件 : #include <unistd.h> 2> 头文件 3> 参数 4> 返回值 : #include <unistd.h> : buf : 存放路径名的首地址 size : 指出存储空间的字节数 : 返回当前路径的完整名称

4> 返回值 5> 备注

: fsync函数只有等到真正写到文件中才返回 : 1> sync函数只是将修改过的块写入队列 2> fsync对单个文件操作,写完才返回,应用于数据库中 : 查询某一个特定用户是否存在 13:特别函数

1> 函数原型 : passwd* getpwuid(uid_t uid) ; passwd* getpwnam(const char *name) ; 2> 头文件 3> 参数 4> 返回值 5> 备注 : #include <sys/types.h> #include <pwd.h> : 略 : 返回一个struct passwd指针 : 可以根据一个用户的uid和name来获得这个用户的信息

14:特别函数

: 查询所有的用户信息 1> 函数原型 : void setpwent() ; passwd* getpwent() ; void endpwent() ; 2> 头文件 3> 参数 4> 返回值 5> 备注

: #include <pwd.h> : 略 : : 略 1> 可以用循环结构来处理 2> 开始前最好先要setpwent(),最后一定要endpwent() 15:特别函数 :查看组用户的函数

同上 getgrgid(), getgrnam(), setgrent(), getgrent(), endgrent() ;

16:特别函数 :查看主机信息

1> 函数原型 : int uname(struct utsname *name) ; 2> 头文件 : #include <utsname.h> 3> 参数 4> 返回值

: 把获得的东西存入struct utsname中 : 略 : 获得主机名称 17:特别函数

1> 函数原型 : int gethostname(char *buf, int size) ; 2> 头文件 3> 参数 4> 返回值 : #include <unistd.h> : 略 : 略

18:时间函数 : 得到当前时间

1> 函数原型 : time_t time(time_t *buf) ;

2> 头文件 : #include <time.h>

3> 参数 : buf :把得到的time_t值存入tm数据结构

: 返回日历时间time_t

:日历时间是一个秒数

: time_t和tm数据结构之间的转换

struct tm* gmtime(const time_t *ptr) ; 4> 返回值 5> 备注 19:特别函数

1> 函数原型 : time_t mktime(tm *buf) ; 2> 头文件 3> 参数 4> 返回值 : #include <time.h> : 略 : 略

20:特别函数

: 转化可视时间 1> 函数原型 : char* asctime(const struct tm *ptr) ; char* ctime(const time_t *t) ; 2> 头文件 3> 参数 : #include <time.h> : 略

: 略

: 退出程序

: void _exit(int status) ; exit --> #include <stdio.h> _exit --> #include <unistd.h> 略 略 4> 返回值 21:特别函数

1> 函数原型 : void exit(int status) ; 2> 头文件 3> 参数 4> 返回值 5> 备注

: 1> exit :退出时对每个文件流都进行fclose操作 2> _exit:退出,直接进入内核

22:特别函数

: 注册函数 1> 函数原型 : int atexit( void (fun*)(void) ) ; 2> 头文件 : #include <stdlib.h> 3> 参数 4> 返回值 5> 备注 : void (fun*) (void) : 略 : 1> 函数的参数是返回值void,参数void的函数 2> 先注册的后执行,后注册的先执行

23:特别函数

: 和内存分配相关的四个函数 void* calloc(size_t nobj, size_t size) ; 1> 函数原型 : void* malloc(size_t size) ; 2> 头文件 void* realloc(void *ptr, size_t newsize) ; void free(void *ptr) ; : #include <stdio.h>

3> 参数 4> 返回值 5> 备注 : 在realloc中,newsize指的是新的空间的大小 : : 略 1> realloc函数中,newsize指的是新的要申请空间的大小 2> calloc和malloc的区别是后者申请完空间后,会初始化

24:特别函数

: 环境变量的相关操作 1> 函数原型 : char* getenv(const char *name) ; int putenv(const char *str) ; int setenv(const char *name, const char *value, int rewrite) ; unsetenv(const char *name) ; : #include <stdlib.h> : 1> rewrite != 1,现删除原来的变量 2> rewrite ==1,不删除现存定义 : 略 2> 头文件 3> 参数 4> 返回值

25:特殊函数 :保存环境函数

1> 函数原型 : int setjmp(jmp_buf buffer) ;

: : : void longjmp(jmp_buf buffer, int flag) ; 略 略 1> 现利用setjmp保存一个状态 2> 利用longjmp恢复保存的状态 2> 头文件 3> 参数 4> 返回值 5> 备注 : #include <setjmp.h>

 

第二篇:Linux常用命令总结

总结的,存着以后好用。

1.Cd 命令

ls #以默认方式显示当前目录文件列表

ls –a #显示所有文件包括隐藏文件

ls –l #显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行

ls --color=never *.so > obj #不显示文字颜色,将所有so文件记录到obj文件中

----------------------------------------------------------

cd dir #切换到当前目录下的dir目录

cd / #切换到根目录

cd .. #切换到到上一级目录

cd ../.. #切换到上二级目录

cd ~ #切换到用户目录,比如是root用户,则切换到/root下

2.rm 删除

1. rm -rf 目录名 r意思是删除目录,f意思是force,强制删除,不提示

2.rmdir 目录名 删除目录

创建

1.Mkdir /home/u1 创建u1目录

2.touch 文件名 创建一个文件

3.vi filename

然后按i键进入编辑状态,编辑完按退出键esc后按住shift+Z两次,就这样退出保存

4.复制cp

cp [选项] 源文件或目录 目标文件或目录 cp ../test2/aa.txt ../test4

5.移动mv

mv [选项] 源文件或目录 目标文件或目录

重命名: mv aa.txt bb.doc

查看文件内容

more 文件 显示部分文件内容

cat 文件 全部显示

打包(压缩)

tar –zvcf XX.tar.gz 源文件

解压

tar -zxvf xx.tar.gz

举例: 二,将 /home/www/images.tar.gz 解压到/home/www下面

[root@xoaocom ~]# cd /home/www

[root@xoaocom ~]# tar -zxvf /home/images.tar.gz

解压到指定的目录

[root@xoaocom ~]# tar -zxvf /home/images.tar.gz -C /specific dir

解包到指定的目录

tar xvf filename.tar -C /specific dir

ZIP与unzip

zip -r xx.zip xx(文件夹)

unzip yasuo.zip

进程

ps显示当前系统进程信息

ps –aux 查看所有详细进程

kill -9600 终止pid为9500的进程

top显示系统进程的活动情况,按占CPU资源百分比来分

free显示系统内存及swap使用情况

hostname 查看系统名称

id 系统组,id

时间

date

su root 切换到root用户

passwd 修改密码

pwd 查看当前路径

version 显示协议版本

目录容量

du -sm /root #计算/root目录的容量并以M为单位

find -name /path file #在/path目录下查找看是否有文件file

grep -ir “chars” #在当前目录的所有文件查找字串chars,并忽略大小写,-i为大小写,-r为下一级目录

route #显示当前路由设置情况

route add default gw 192.168.1.1 metric 1 #设置192.168.1.1为默认的路由

route add default gw 192.168.1.1 mask 255.255.255.0 添加路由

route del default #将默认的路由删除

dhcp #启动dhcp服务

dhclient #启动dhcp终端并自动获取IP地址

ping 163.com #测试与163.com的连接

ping 202.96.128.68 #测试与IP 202。96.128.68的连接

telnet 192.168.1.1 #登陆IP为192.168.1.1的telnet服务器

telnet iserver.com #登陆域名为iserver.com的telnet服务器

ftp 192.168.1.1 或 ftp iserver.com #登陆到ftp服务

服务:

sftp .*.* :port 以sftp协议登入远程机 输入密码,实现上传下载

sftp> get /usr/local/videosresource/filmvod/index.jsp /usr/local/videosresource/filmvod/ (ps:mget同) 将远程filemvod文件夹下的index.jsp下载到本机filmvod文件夹下

sftp> put /home/lou/test/aa.txt /srv/www/

将本机的aa.txt 上传至远程机的srv/www目录下

ssh

reboot #重新启动计算机

halt #关闭计算机

shutdown now 立即关机 shutdown -10 十分钟后关闭计算机 按ctrl+C取消

init 0 #关闭所有应用程序和服务,进入纯净的操作环境

init 1 #重新启动应用及服务

init 6 #重新启动计算机

查看tomcat日志文件

tail –f catalina.out 3g_web.20xx-03-01.log 查看3g_web项目20xx-03-01日的log日志

f表示不断刷新最新日志情况

相关推荐