-
win命令行,含源代码)一个直接用命令查看修改删除图片属性Exif信息的文件
2016-02-15 08:56:01Current release version: 3.00 (Feb 2 2015) Source tarball jhead-3.00.tar.gz (69 k) Pre-built Windows executable jhead....拍摄的avi短片exif信息存储在同名thm文件中,可用此指令给avi文件更名一般与-n共同使用 -
如何编写批处理文件批处理文件批处理文件
2010-04-14 10:36:10同时不能有 52 个以上都在使用中。 您还可以在相邻字符串上使用 FOR /F 分析逻辑;方法是, 用单引号将括号之间的 filenameset 括起来。这样,该字符 串会被当作一个文件中的一个单一输入行。 最后,您可以用 FOR ... -
surfer9汉化版-单文件未拆分的完整版
2012-04-02 11:35:322、使用了Tabbed(标签)窗口,在工作区顶部显示标签,打开的多个图形窗口,只需要简单 点击标签就可切换不同窗口,切换窗口操作更为方便。 3、提供图层功能(类似以前的Overlay功能)(图1),可以在对象管理器中... -
您可能没有权限使用网络资源_请与这台服务器的管理员联系以查明您是否有访问权限
2014-09-11 11:09:54打开“我的电脑”,在菜单上选择“工具”->“文件夹选项”->“查看”,清除“使用简单文件共享(推荐)”的选择。 2. 启用guest账户。 右键点击“我的电脑”,选择“管理”,选择“本地用户和组”->“用户”,右键... -
vss如何使用(图解)
2011-04-25 15:10:48你还必须确定是要删除文件,但使其能够恢复,还是永久性地破坏它。 VSS中有以下三种途径可以实现从数据库中移走文件。 3.3.3.9.1删除(delete) 将文件从项目中移走。该文件仍然存在于你的VSS数据库和其它共享该... -
桃源企业文件管理系统 v3.3.zip
2019-07-08 23:30:238、文件回收站功能:前台用户操作中删除的目录或文件均会被转移到回收站,在这里做最后确认后可以删除或清空文件,也可以还原选择的目录或文件,避免误操作损失。 9、公共空间:由后台管理员启用并设置好公共空间各... -
DOS三个基本启动文件COMMAND.COM MS-DOS.SYS IO.SYS DOS引导文件Boot.rar sys.com
2013-02-24 14:03:28MSDOS.SYS 在微软非NT内核的操作系统中经常可以看到它,具有只读、系统、隐藏三个属性,因此在WINDOWS中是看不到的,可以通过“文件夹选项”中“显示系统文件”和“显示所有文件”来显示它,如果改它的属性在WINDOWS... -
您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是否有访问权限。拒绝访问解决方法
2010-07-13 14:37:44具体的修改方法如下:打开“我的电脑”中的“工具”,选择“文件夹属性”,调出“查看”标签,在“高级设置”部分滚动至最底部将“简单文件共享(推荐)”前面的选择取消,另外如果选项栏里还有“Mickey Mouse”项也将... -
jQuery上传插件Uploadify 3.2在.NET下的详细例子
2016-08-19 10:13:32项目中要使用Uploadify 3.2来实现图片上传并生成缩略通的功能,特此记下来,以供各位参考! Uploadify下载地址:http://www.uploadify.com/download/ 下载下来解压后估计里面很多文件,其实有用的也就jquery.... -
Oracle 主要配置文件介绍
2007-08-25 10:07:402 在使用中文版 CAMS 时 环境变量 NLS_LANG 的值应该设置为 AMERICAN.ZHS16CGB231280 如上所示 在使用英文版 CAMS时 可 以不设置 NLS_LANG 即去掉 export NLS_LANG=... ... 那一行 也可以 设置 NLS_LANG... -
SVN客户端用户使用手册
2007-07-17 14:06:51对版本库的修改包括修改文件内容,添加删除文件,添加删除目录。 经过第三步的操作,本地的工作区文件夹,即workspace上会有绿色对勾出现,工作区下的文件也会带有绿色对勾,如图2 图2 如果对库中某一个文件... -
jquery插件使用方法大全
2012-05-24 23:58:18并且可以在不同的js文件中做相同的操作,即$(document).ready (fn)可以在一个页面中重复出现,而不会冲突。基本上Jquery的很多plugin都是利用这个特性,正因为这个特性,多个plugin共同使用起来,在初始化时不会发生... -
一个多学校OA办公系统(独有的)firewall.rar
2019-07-05 06:27:21相当于把自己的文件保存在系统里,使用方法与已发文件差不多。如果正文内容无,就不是出现“更多内容”的链接。 四、已收文件 指别人发送的已接收的文件,操作时和已发文件相似。已收文件可点击“清除”,以后... -
除了干净之外,它还能达到复用的目的,比如你在多个地方想使用同一个链接,那么文内使用标识符,只在最底部给标识符定义出实际的URL链接即可,类似编程语言中的变量。 URL标识符是我起的名字,不知道是否准确。囧。...
-
千里马酒店前台管理系统V7使用手册
2011-06-16 14:09:38前厅部被喻为酒店的“神经中枢”、联系宾客的“桥梁和纽带”、酒店经营管理的“橱窗和门面”。前厅部是酒店的营业中心、协调中心、信息中心,在酒店经营中起着销售、沟通、控制、协调服务和辅助决策的作用。 V7.2... -
密码管家 - 最强大的密码管理助手
2013-09-22 15:06:261. v1.5.0包含一个重要更新和严重Bug的修正,强烈建议在使用v1.0.0的机友升级。由于备份文件增加了密码校验功能导致新版密码管家不能导入旧版的备份文件,所以请您按照如下步骤升级:首先确保v1.0.0密码管家内的记录... -
密码管家 - 最强大的密码管理助手(2012年2月2日重新上传v2.5.0)
2012-02-02 19:02:401. v1.5.0包含一个重要更新和严重Bug的修正,强烈建议在使用v1.0.0的机友升级。由于备份文件增加了密码校验功能导致新版密码管家不能导入旧版的备份文件,所以请您按照如下步骤升级:首先确保v1.0.0密码管家内的记录... -
Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好
2011-01-28 17:02:08在Qt Creator 的安装目录的qt 文件下的bin 文件夹下(我安装在了D 盘, 所以路径是D:\Qt\2009.04\qt\bin),可以找到所有的相关.dll 文件。在这里 找到mingwm10.dll 文件,将其复制到C:\WINDOWS\system 文件夹下,... -
coreutils-8.32.tar.gz
2020-04-30 13:16:46删除文件或者目录 rmdir 删除目录(目录必需为空) seq 以指定的步长输出一个数列 sha1sum 显示或校验 160 位的 SHA1 校验码 shred 安全删除一个文件,重写其占用的磁盘空间,使其无法恢复。 sleep 延迟一段... -
你必须知道的495个C语言问题
2015-10-16 14:14:285.5 在使用非零位模式作为空指针的内部表示的机器上,NULL是如何定义的? 5.6 如果NULL定义成#defineNULL((char*)0),不就可以向函数传入不加转换的NULL了吗? 5.7 我的编译器提供的头文件中定义的NULL为0L。为... -
主题:受材质设计启发的可定制GRUB主题-源码
2021-02-03 00:36:29强烈建议将下载的文件放在一个不会被删除的文件夹中,因为主脚本matter.py对于系统将来进行的grub更新是必需的。 另外,如果您不想卸载问题,也可以从那里完成。 依存关系 事项会通知您任何缺少的依赖项,但是无论... -
Mac数据恢复EasyRecovery Enterprise v11.1.0.0 专业版.zip
2019-07-14 08:30:03为了保持驱动器上删除或者丢失的文件,所有被恢复的文件必须保存到另外的存储设备或者系统里的其它驱动器名下。无论文件是被命令行方式删除,还是被应用程序或者文件系统删除,还是从回收站删除,EasyRecovery都能... -
如何查杀运行状态下的EXE、DLL病毒
2008-11-15 00:13:26另外,目前还有些病毒或木马程序有时还会感染U盘,在U盘产生Autorun.inf和相应的EXE文件。 避免系统重装遇病毒攻击的十招 第一招:不要急着接入网络 在安装完成Windows后,不要立即把服务器接入网络,因为... -
你必须知道的495个C语言问题(高清版)
2010-03-31 16:24:095.5 在使用非零位模式作为空指针的内部表示的机器上,NULL 是如何定义的? 56 5.6 如果NULL定义成#define NULL((char *)0) ,不就可以向函数传入不加转换的NULL 了吗? 57 5.7 我的编译器提供的头文件中定义的... -
《你必须知道的495个C语言问题》
2010-03-20 16:41:185.5 在使用非零位模式作为空指针的内部表示的机器上,NULL 是如何定义的? 56 5.6 如果NULL定义成#define NULL((char *)0) ,不就可以向函数传入不加转换的NULL 了吗? 57 5.7 我的编译器提供的头文件中定义的... -
linux shell编程指南第二十六章------shell 工具
2013-12-14 11:17:03这些日志文件通常在文件系统中保留几周,过时将被删除。 在开发脚本的时候,可能总要创建一些临时的文件。在正常运行脚本的时候,也要使用 临时文件保存信息,以便作为另外一个进程的输入。可以使用c a t命令来...任何脚本都应该能够创建临时文件或日志文件。在运行脚本做备份时,最好是保存一个
日志文件。这些日志文件通常在文件系统中保留几周,过时将被删除。
在开发脚本的时候,可能总要创建一些临时的文件。在正常运行脚本的时候,也要使用
临时文件保存信息,以便作为另外一个进程的输入。可以使用c a t命令来显示一个临时文件的内容或把它打印出来。
在创建日志文件时,最好能够使它具有唯一性,可以按照日志文件创建的日期和时间来
识别这些文件。我们可以使用d a t e命令做到这一点。这样就能够使日期和时间成为日志文件名
中的一部分。
为了改变日期和时间的显示格式,可以使用如下的命令:
date option + %format
使用加号‘+’可以设置当前日期和时间的显示格式。下面的例子将日期以日、月、年的
格式显示:注意,如果希望在日期和时间的显示中包含空格,要使用双引号。
[root@localhost huangcd]# date +%d%m%y
141213
[root@localhost huangcd]# date +%d-%m-%y
14-12-13
[root@localhost huangcd]# date +%A%e" "%B" "%Y
星期六14 十二月 2013
[root@localhost huangcd]# date +%R
09:29
[root@localhost huangcd]# date +%T
09:30:05在文件名中含有日期的一个简单办法就是使用置换。把含有你所需要的日期格式的变量
附加在相应的日志文件名后面即可。
在下面的例子中我们创建了两个日志文件,一个使用了d d,m m,y y的日期格式,另一个
使用了d d,h h,m m的时间格式。[root@localhost huangcd]# ls -al |grep "mylog*"
-rw-r--r-- 1 root root 0 12-14 09:38 mylog1.141213
-rw-r--r-- 1 root root 0 12-14 09:37 mylog2.1409:37
-rw-r--r-- 1 root root 0 12-14 09:38 mylog2.1409:38
[root@localhost huangcd]# cat log
#!/bin/bash
MYDATE=`date +%d%m%y`
LOGFILE=/home/huangcd/mylog1.$MYDATE
>$LOGFILE
MYTIME=`date +%d%R`
LOGFILE2=/home/huangcd/mylog2.$MYTIME
>$LOGFILE2在本书的前面讨论特殊变量时,曾介绍变量$ $,该变量中保存有你所运行的当前进程的
进程号。可以使用它在我们运行的脚本中创建一个唯一的临时文件,因为该脚本在运行时的
进程号是唯一的。我们只要创建一个文件并在后面附加上$ $即可。在脚本结束时,只需删除
带有$ $扩展的临时文件即可。S h e l l将会把$ $解析为当前的进程号,并删除相应的文件,而不
会影响以其他进程号做后缀的文件。下面的例子中,创建了两个临时文件,并进行了相应的操作,最后在结束时删除了这些
文件。[root@localhost huangcd]# echo $$
7771[root@localhost huangcd]# ls -al |grep "hold*"
-rw-r--r-- 1 root root 77 12-14 09:45 hold1.12461
-rw-r--r-- 1 root root 77 12-14 09:45 hold2.12461
[root@localhost huangcd]# cat tempfiles
#!/bin/bash
HOLD1=/home/huangcd/hold1.$$
HOLD2=/home/huangcd/hold2.$$
df -tk >$HOLD1
cat $HOLD1 >$HOLD2
#rm /home/huangcd/*.$$记住,该进程号只在当前进程中唯一。例如,如果我再次运行上面的脚本,将会得到一
个新的进程号,因为我已经创建了一个新的进程。
如果文件有特殊用途的话,那么创建含有日期的文件,就可以使你很容易地查找到它们。
而且还可以很容易地按照日期删除文件,因为这样一眼就能看出哪个文件是最新的,哪个文
件是最“旧”的。信号就是系统向脚本或命令发出的消息,告知它们某个事件的发生。这些事件通常是内
存错误,访问权限问题或某个用户试图停止你的进程。信号实际上是一些数字。下表列出了
最常用的信号及它们的含义还有信号0,我们前面在创建. l o g o u t文件时已经遇到过。该信号为“退出s h e l l”信号。为
了发出信号0,只要从命令行键入e x i t,或在一个进程或命令行中使用< C T R L - D >即可。
发送信号可以使用如下的格式:
kill [-signal no:| signal name] process ID
使用k i l l命令时不带任何信号或名字意味着使用缺省的信号1 5。
可以使用如下的命令列出所有的信号:[root@localhost huangcd]# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT
17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU
25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH
29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN
35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4
39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12
47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14
51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10
55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6
59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX发送信号1将使一个进程重新读入配置文件。例如,你在运行域名服务( D N S)守护进程
如果系统不支持ps -ef命令,那么可以使用ps xa。为了杀死该进程,我可以使用下面的两
n a m e d,现在你对域名数据库文件做了某些修改,这时不需要杀死该守护进程再重新启动,只
需使用kill -1命令向其发送信号1。N a m e d进程将重新读入它的配置文件。
种方法之一:
kill -9 157
或
kill -s SIGKILL 157
在有些系统中,不必使用- s,例如:kill SIGKILL 157。有些信号可以被应用程序或脚本捕获,并依据该信号采取相应的行动。另外一些信号不
能被捕获。例如,如果一个命令收到了信号9,就无法再捕捉其他信号。
在编写s h e l l脚本时,只需关心信号1、2、3和1 5。当脚本捕捉到一个信号后,它可能会采
取下面三种操作之一:
1) 不采取任何行动,由系统来进行处理。
2) 捕获该信号,但忽略它。3) 捕获该信号,并采取相应的行动。
大多数的脚本都使用第一种处理方法,这也是到目前为止本书中所有脚本所采取的处理
方法。t r a p可以使你在脚本中捕捉信号。该命令的一般形式为:
trap name signal(s)
其中,n a m e是捕捉到信号以后所采取的一系列操作。实际生活中, n a m e一般是一个专门
用来处理所捕捉信号的函数。N a m e需要用双引号(“ ”)引起来。S i g n a l就是待捕捉的信号。
脚本在捕捉到一个信号以后,通常会采取某些行动。最常见的行动包括:
1) 清除临时文件。
2) 忽略该信号。
3) 询问用户是否终止该脚本的运行。
下表列出了一些最常见的t r a p命令用法:
trap "" 2 3 忽略信号2和信号3,用户不能终止该脚本
trap "commands" 2 3 如果捕捉到信号2或3,就执行相应的c o m m a n d s命令
trap 2 3 复位信号2和3,用户可以终止该脚本
也可以使用单引号(‘’)来代替双引号(“”);其结果是一样的。下面的例子一经运行就开始计数直至用户按< C t r l - C >(信号2)。这时该脚本将会显示出当
前的循环数字,然后退出。
在本例中t r a p命令的格式为:
trap "do_something" signal no:(s)
下面就是该脚本:[root@localhost huangcd]# sh trap1
1
2
3
4
you just hit ctrl+d ,at number 4
I will now exit
[root@localhost huangcd]# cat trap1
#!/bin/bash
trap "my_exit" 2
LOOP=0
my_exit()
{
echo "you just hit ctrl+d ,at number $LOOP"
echo "I will now exit"
exit 1
}
while :
do
LOOP=`expr $LOOP + 1`
echo $LOOP
sleep 3
done在下面的例子中,在脚本捕捉到信号2后将会向用户提供一个选择,询问用户是否真的要
退出。这里使用c a s e语句来决定采取何种操作。
如果用户希望退出,他或她可以选择1,此时当前函数会以状态1退出,而另一个清除进
程将会据此启动。如果用户并不希望退出,那么可以选择2或不做任何选择,此时c a s e语句将
会使用户退回到脚本中原来的地方。在c a s e语句中一定要包含用户输入空字符串的情况。
下面的函数在收到信号后,将会向用户提供选择:当上面的脚本运行时,只要在输入任何域时按下< C T R L - C >,就会得到一个选择:是继续
运行还是退出。[root@localhost huangcd]# cat trap4
#!/bin/bash
trap "my_exit" 1 2 3 15
LOOP=0
HOLD1=/home/huangcd/HOLD1.$$
HOLD2=/home/huangcd/HOLD2.$$
my_exit()
{
echo -e "\nRecieved interrupt....."
echo "Do you wish to really exit???"
echo "Y:yes"
echo "N:no"
echo -n "Your choice [Y..N]>"
read ANS
case $ANS in
Y|y) exit 1;;
N|N) ;;
esac
}
echo -n "Enter your name:"
read NAME
echo -n "Enter your age:"
read AGE[root@localhost huangcd]# sh trap4
Enter your name:huang chengdu
Enter your age:24
[root@localhost huangcd]# sh trap4
Enter your name:huang
Enter your age:
Recieved interrupt.....
Do you wish to really exit???
Y:yes
N:no
Your choice [Y..N]>y
[root@localhost huangcd]# sh trap4
Enter your name:
Recieved interrupt.....
Do you wish to really exit???
Y:yes
N:no
Your choice [Y..N]>n
huang
Enter your age:12下面的脚本是另一个捕获信号的例子。该脚本名为l o c k i t,它将使用一个连续不断的w h i l e
循环锁住终端。在该脚本中, t r a p命令捕捉信号2、3和1 5。如果一个用户试图中断该脚本的运
行,将会得到一个不成功的提示。
在脚本初次执行时,将会被提示输入一个口令。在解锁终端时没有任何提示,可以直接
输入口令并按回车键。该脚本会从终端读入所输入的口令,并与预先设置的口令做比较,如
果一致就解锁终端。
如果忘记了自己的口令,那么只好登录到另一个终端上并杀死该进程。在本例中没有对
口令的长度加以限制—这完全取决于你。
如果你从另外一个终端上杀死了该进程,当再次回到这个终端时,可能会遇到终端设置
问题,例如回车键不起作用。这时可以试着使用下面的命令,这样可以解决大部分问题。
$ stty sane
下面就是该脚本。[root@localhost huangcd]# cat lockit
#!/bin/bash
trap "nice_try" 2 3 15
TTY=`tty`
nice_try()
{
echo "Nice try,the terminal stays locked"
}
SAVEDSTTY=`stty -g`
stty -echo
echo -n "Enter your password to lock $TTY:"
read PASSWORD
echo -n "starting\n"
while :
do
read RESPONSE
if [ "$RESPONSE" = "$PASSWORD" ]
then
echo "unlocking"
break
fi
echo "wrong password and terminal is locked"
done
stty $SAVEDSTTY
[root@localhost huangcd]# sh lockit
Enter your password to lock /dev/pts/1:starting\nwrong password and terminal is locked
unlocking -
常用的DOS命令
2012-12-18 17:23:00该命令使用TCP/IP上的NetBIOS显示协议统计和当前TCP/IP连接,使用这个命令你可以得到远程主机的NETBIOS信息,比如用户名、所属的工作组、网卡的MAC地址等。在此我们就有必要了解几个基本的参数。 -a 使用这个参数... -
超级有影响力霸气的Java面试题大全文档
2012-07-18 09:47:04finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 16、sleep() 和 wait() 有什么区别? sleep是线程类(Thread)... -
基于hhww改进版的传统五笔输入法(新版支持WIN7)
2009-11-14 21:05:54IME TOOL 可以从注册表中删除不需要的输入法,但并不删除文件。 七、其它功能 打开输入法属性、打开关闭输入法状态条等。支持命令行参数,支持运行脚本。 另外修正了老版本存在的一些小 bug。 局限: 1、在 Win9x ...
-
2021-03-03
-
rslogix5000软件工具介绍.pdf
-
CentOS7安装Python3环境(无需修复yum命令)
-
华为1+X——网络系统建设与运维(中级)
-
AppScan 10.0.4.zip
-
MySQL 高可用工具 heartbeat 实战部署详解
-
爱普生 EPSON L800_L801清零软件.zip
-
零基础一小时极简以太坊智能合约开发环境搭建并开发部署
-
VC实现teechart时间轴自右向左推移-C++代码类资源
-
GDPR专题文档.zip
-
2014年重庆理工大学《物联网平台设计与开发》期末考试试卷).pdf
-
LVS + Keepalived 实现 MySQL 负载均衡与高可用
-
华为1+X认证——网络系统建设与运维(初级)
-
Caused by: java.security.cert.CertificateException: No name matching cas.jackray.com found
-
Navicat for MySQL
-
MySQL 高可用(DRBD + heartbeat)
-
vue3从0到1-超详细
-
Query on A Tree(可持续01线段树+dfs序)
-
2014年重庆理工大学《物联网技术导论》期末考试试卷.pdf
-
LeetCode.304 二维区域和检索 - 矩阵不可变