linux命令

来源:互联网 发布:二战苏德实力对比知乎 编辑:程序博客网 时间:2024/06/06 08:48
Linux使用Shell脚本实现ftp的自动上传下载
摘要: 1. ftp自动登录批量下载文件。 #####从ftp服务器上的/home/data 到 本地的/home/databackup#####!/bin/bashftp -n<<!open 192.168.1.171user guest 123456binarycd /home/datalcd /home/databackuppromptmget *closebye!2. ftp自动登录上传文件。 ####本地的/home/databackup to ftp服务器上的/home/data#####!/bin/bashftp -n<<!open 192.168.1.171us阅读全文
posted @ 2012-05-09 09:55 ggjucheng 阅读(10) | 评论 (0) 编辑
Linux iptables防火墙实用模板
摘要: 服务器的安全性的重要性,可以关系到负责人的饭碗,而防火墙对于服务器的安全性相当重要,但是防火墙的设置需要小心,尤其是初学者,很容易弄错,一旦弄错,很容易连不上网络,要自己去机房重新配置防火墙。如果不熟悉配置,一个是怕权限太严格,容易导致自己都不能访问,上面的程序也很可能不能正常访问网络,另一个是怕权限设置的太松,安全性不够,容易被侵入。所以初学者很需要一个简单的防火墙模板,经过简单修改,就能满足一般的安全要求,不用走多个弯路。于是我参考鸟哥的私房菜,经过修改,写出以下防火墙的模板,帮助初学者入门,巩固防火墙。脚本内容如下,保存脚本内容为iptables.sh,然后直接执行,还要加入/etc/r阅读全文
posted @ 2012-02-17 16:37 ggjucheng 阅读(78) | 评论 (0) 编辑
Linux tcpdump命令详解
摘要: 简介用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。实用命令实例默认启动tcpdump普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。监视指定网络接口的数据包tcpdump -i eth1如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0,下面的例子都没有指定网络接口。 阅读全文
posted @ 2012-01-14 23:54 ggjucheng 阅读(1609) | 评论 (0) 编辑
Linux系统调用列表
摘要: 以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数。这可能是你在互联网上所能看到的唯一一篇中文注释的Linux系统调用列表,即使是简单的字母序英文列表,能做到这么完全也是很罕见的。按照惯例,这个列表以man pages第2节,即系统调用节为蓝本。按照笔者的理解,对其作了大致的分类,同时也作了一些小小的修改,删去了几个仅供内核使用,不允许用户调用的系统调用,对个别本人稍觉不妥的地方作了一些小的修改,并对所有列出的系统调用附上简要注释。其中有一些函数的作用完全相同,只是参数不同。(可能很多熟悉C++朋友马上就能联想起函数重载,但是别忘了Linux核心是用C语言写阅读全文
posted @ 2012-01-08 23:13 ggjucheng 阅读(40) | 评论 (0) 编辑
Linux strace命令
摘要: 简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。输出参数含义root@ubuntu:/usr# strace cat /dev/null execve("/bin/cat", ["cat", "/dev/null"], [/* 22 vars */]) = 0brk(0) 阅读全文
posted @ 2012-01-08 23:09 ggjucheng 阅读(98) | 评论 (0) 编辑
Linux netstat命令详解
摘要: 简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 2 210.34.6.89:telnet 210.34.6.96:2873 ESTABLISHEDtcp 296 0 210.34.阅读全文
posted @ 2012-01-08 22:09 ggjucheng 阅读(832) | 评论 (0) 编辑
linux lsof命令详解
摘要: 简介lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。输出信息含义在终端下输入lsof即可显示系统打开的文件,因为 lsof阅读全文
posted @ 2012-01-08 20:45 ggjucheng 阅读(85) | 评论 (0) 编辑
Linux free命令详解(转)
摘要: 前段时间有个项目的用C写的,性能测试时发现内存泄露问题。关于怎么观察内存使用问题,free是很好用的一个命令。参数讲解bash-3.00$ freetotal used free shared buffers cachedMem: 1572988 1509260 63728 0 62800 277888-/+ buffers/cache: 1168572 404416Swap: 2096472 16628 2079844Mem:表示物理内存统计t...阅读全文
posted @ 2012-01-08 15:19 ggjucheng 阅读(46) | 评论 (0) 编辑
linux的top命令参数详解
摘要: 简介top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.下面详细介绍它的使用方法。参数含义top - 01:06:48 up 1:22, 1 ..阅读全文
posted @ 2012-01-08 14:26 ggjucheng 阅读(57) | 评论 (0) 编辑
FreeBSD vmstat详解(附例子)
摘要: top是给Linux设计的。在FreeBSD VM里面的Free概念和其他OS完全不同,使用top查看Free内存对于FreeBSD来说可以说没什么意义。正确的方法是看vmstat。 # vmstat procs memory page disk faults cpu r b w avm fre flt re pi po fr sr ad0 in sy cs us sy id 0 2 1 270512 20316 30 0 0 ...阅读全文
posted @ 2012-01-07 11:25 ggjucheng 阅读(94) | 评论 (0) 编辑
Linux vmstat命令实战详解
摘要: vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如:root@ubuntu:~# vmstat 2 1procs -----------memory-阅读全文
posted @ 2012-01-05 01:01 ggjucheng 阅读(1538) | 评论 (3) 编辑
VIM编码设置
摘要: vim里面的编码主要跟三个参数有关:enc(encoding), fenc(fileencoding)和fencs(fileencodings)fenc是当前文件的编码,也就是说,一个在vim里面已经正确显示了的文件(前提是你的系统环境跟你的enc设置匹配),你可以通过改变 fenc后再w来将此文件存成不同的编码。比如说,我:set fenc=utf-8然后:w就把文件存成utf-8的了,:set fenc=gb18030再:w就把文件存成gb18030的了。这个值对于打开文件的时候是否能够正确地解码没有任何关系。fencs,是用来在打开文件的时候进行解码的猜测列表。文件编码没有百分百正确的判阅读全文
posted @ 2012-01-04 22:17 ggjucheng 阅读(40) | 评论 (0) 编辑
学会用core dump调试程序错误(转)
摘要: 前言 最近在项目中遇到大型程序出现SIGSEGV ,一直不知道用core dump工具来调试程序,花了近一周的时间,才定位问题,老大很生气,后果很严重,呵呵,事后仔细学习了这块的知识,了解一点core dump的知识。 在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明者为王安),线圈就叫作core ,用线圈做的内存就叫作“core memory”。(线圈的单词应该是coil,呵呵)如今,半导体工业澎勃发展,已经没有人用线圈当内存了,不过,在许多情况下,人们还是把内存叫作“core”。 所以注意了:这里的core不是核心,而是内存。不过结合实际来看,好像也有点“内核所占内存”的.阅读全文
posted @ 2011-12-20 10:08 ggjucheng 阅读(195) | 评论 (0) 编辑
Linux入门——适合初学者
摘要: 学习Linux也有一阵子了,这过程中磕磕撞撞的,遇到了问题,也解决了一些问题,学习的路子是曲折的,想总结点啥的,让刚刚学习Linux的不会望而生畏。为啥我们要学习Linux技术的价值不在于这个技术有多么高超,而在于技术本身给我们带来什么价值,所以很多时候我们学习一个技术,不能盲目学,是为了使用这个技术,知道这个技术的使用场景,知道这个技术带来的便利性,我们才决定要深入学习。那我们干嘛要学习Linux?Linux能给我们带来什么价值呢,这样我们的学习才不会麻木。Linux给我的感觉就是稳定,免费,性能好。稳定,体现在哪里?我们使用PC机,安装的操作系统一般是windows xp,windows 阅读全文
posted @ 2011-12-16 14:34 ggjucheng 阅读(202) | 评论 (4) 编辑
VIM高效率操作 (转载)
摘要: 这篇教程写了在不同工作模式下使用VIM的一些基本技巧 -- 即插入模式(insert mode), 命令模式(command mode), 存取文件等。目的是帮助刚刚接触VIM的新手更加有效率的使用这个出色的编辑器。说明:在这篇文章里面,<C-X>代表Ctrl + X -- 就是按住Ctrl键然后再按X。而且你可以在很多情况下使用 :help command 来获得大部分命令的帮助,这个是VIM的内部帮助文件命令。1. 高效率移动1.1 在插入模式之外基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面VIM就像一个“哑巴”编辑器一样。很多新手都会一直呆在插入模式里面,阅读全文
posted @ 2011-12-15 14:00 ggjucheng 阅读(66) | 评论 (0) 编辑
vim实用配置(转)
摘要: 在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:$vi ~/.vimrc设置完后$:x 或者 $wq 进行保存退出即可。下面给出一个例子,其中列出了经常用到的设置,详细的设置信息请参照参考资料:"双引号开始的行为注释行,下同"去掉讨厌的有关vi一致性模式,避免以前版本的一些阅读全文
posted @ 2011-12-15 13:52 ggjucheng 阅读(63) | 评论 (0) 编辑
GDB多进程调试(转)
摘要: GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统:进程 Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc2 或者 proc3 呢?实际上,GDB 没有对多进程程序调试提供直接支持。例如,使用GDB调试某个进程,如果该进程fork了子进程,GDB会继续调试该进程,子进程会不受干扰地运行下去。如果你事先在子进程代码里设定了断点,子进程会收到SIGTRAP信号并终止。那么该如何调试子进程呢?其实我们可以利用GDB的特点或者其他一些阅读全文
posted @ 2011-12-15 12:53 ggjucheng 阅读(129) | 评论 (0) 编辑
实用make最佳实践
摘要: 一、前言Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系。然而make的命令"博客精深",对于初学者来说,真是望而生畏,这篇文章不是make详解,只是讲解实用makefile的编写和使用。在linux上,如果用gcc一个个编译源码,实在很繁琐,尤其是随着源代码的增加,这种繁琐更是明显,很多人,包括我,其实要求很简单,只要把头文件和cpp或者c文件放在当前目录或者其他目录,直接一个命令阅读全文
posted @ 2011-12-14 20:50 ggjucheng 阅读(273) | 评论 (1) 编辑
GDB详解
摘要: 1 简介2 生成调试信息3 启动GDB 的方法4 程序运行上下文 4.1 程序运行参数 4.2 工作目录 4.3 程序的输入输出5 设置断点 5.1 简单断点 5.2 多文件设置断点 5.3 查询所有断点6 观察点7 条件断点8 维护停止点9 为停止点设定运行命令10 调试代码11 查看运行时数据12 程序变量13 自动显示14 历史记录15 改变程序的执行 15.1 修改变量值 15.2 跳转执行 15.3 产生信号量 15.4 强制函数返回 15.5 强制调用函数16 显示源代码17 调试已运行的进程18 线程19 查看栈信息20 信号21 catch22 指定源文件的路径1 简介GDB(阅读全文
posted @ 2011-12-14 19:52 ggjucheng 阅读(240) | 评论 (0) 编辑
Linux GCC常用命令
摘要: 1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了,而是阅读全文

原创粉丝点击