關於電腦上的知識, 如 Linux, Perl, C/C++, C# …

2009年11月22日 星期日

請問如何 批次執行 Notepad的資料修改?

問題來源:

問題內容:
因為工作需要. 每月須要執行45個相同格式的.txt檔(即45次)

檔案由別單位按月提供, 格式為文字檔, 第1列為欄名, 第2列起為資料列約300~500列(不固定列數, 但所有資料皆依時間由小至大排列),

每個檔案每次需要做以下動作
* 保留第1列, 以及檔案最後4列(最近4期資料), 其他列刪除.
* 另存該檔案

請問一下批次檔如何寫? (假設原始檔案 file01.txt, file02.txt, ..., file45.txt)
請教高手..

問題答案:
擔心複製後貼上會出錯?可以直接下載已寫好的檔案,這裡下載,(如何下載:請參考這裡

使用方法:
NextMonth    c:\2009-11   c:\2009-12


[NextMonth.cmd]
@echo off
setLocal ENABLEEXTENSIONS

if $%1$ == $$ goto showUsage
if $%2$ == $$ goto showUsage
if not exist %1 (
dir /b %1
echo.
goto showUsage
)

if not exist %2 md %2

for %%F in (%1\*.txt) do (
head -1 %%F > %2\%%~nxF
tail -4 %%F >> %2\%%~nxF
)

goto end

:showUsage
echo Create Next Month Report
echo =====================================================================================
echo Usage:
echo.
echo %0 [drive:]this_month_report_path [drive:]next_month_report_path
echo.

:end
endlocal

補充說明:
「head.exe」、「tail.exe」原本是 unix 上的指令,現在有善心人士把它們移植到 Windows 平台上,您可以在「NextMonth.zip」中找到,或者到這下載:http://sourceforge.net/projects/unxutils/


XP自動關機設定能每天執行嘛?

問題來源:

問題內容:
請問XP的內建自動關機的那個方法

能夠只設定一次然後每天一到那個時間

就能自動關機嗎?

即使從開機也不用在從新設定關機時間

假如我要每天晚上9:30分關機

應該怎麼設定?

問題答案:
這個問題可以使用排程來解決,首先要先確認您的電腦上的 Task Scheduler 是否有開啟,詳細方法可以參考這裡

一、開啟檔案總管,到「控制台」→「排定的工作」→於空白處,點擊滑鼠右鍵→「新增」→「排定的工作」
http://img183.yfrog.com/i/001em.png/

二、給這個新排定工作取個名字,如「定時關機」
http://img211.yfrog.com/i/002hh.png/

三、在「定時關機」上,用滑鼠雙擊它,會出現設定畫面,
於「工作」頁籤中,
在「執行」填入「shutdown -f -s -t 60」,這個指令的意思是:「60秒後強制關機」,
在「執行身分」請輸入權限夠大的使用者帳號,
點擊「設定密碼」後,請輸入使用者密碼,
不勾選「登入後才執行」,
勾選「啟用(已排定的工作會在指定時間執行))」。
http://img26.yfrog.com/i/003xg.png/http://img188.imageshack.us/img188/9631/arrow0017.gifhttp://img237.yfrog.com/i/004u.png/

四、於「排程」頁籤中,
在「工作排程」中,選擇「每日」,
在「開始時間」中,輸入您想要關機的時間,
最後點擊「確定」,完成設定。
http://img4.yfrog.com/i/005wb.png/

五、測試是否會在設定的時間自動關機呢?
確定設定正確,在時間到的時候,有執行自動關機。
http://img502.yfrog.com/i/006z.png/

XP自動關機軟體問題~我想幫公司電腦節能減碳

問題來源:

問題內容:
各位大大好,我們公司有六台多人共用電腦平常都是處於開機後待登入狀態的視窗
也就是處於需要按 ctrl+alt+del這三個鍵登入的視窗,這時後系統也沒執行任何程式所以我安裝了一些自動關機系統也無法啟動,需要有使用者登入後執行作業系統才會 跑到關機程式,電腦平時也很少使用常常一開機就到晚,大家公德心又差,想請大大幫忙如何在ctrl+alt+del視窗下當系統要跑螢幕保護程式時能夠順 便執行關機達到節能的目的或者能設定在幾分鐘後關機。

謝謝各位大大^^

問題答案:
這個問題可以使用排程來解決,首先要先確認您的電腦上的 Task Scheduler 是否有開啟,詳細方法可以參考這裡

一、開啟檔案總管,到「控制台」→「排定的工作」→於空白處,點擊滑鼠右鍵→「新增」→「排定的工作」
http://img183.yfrog.com/i/001em.png/

二、給這個新排定工作取個名字,如「閒置時關機」
http://img153.yfrog.com/i/002hl.png/

三、在「閒置時關機」上,用滑鼠雙擊它,會出現設定畫面,
於「工作」頁籤中,
在「執行」填入「shutdown -f -s -t 60」,這個指令的意思是:「60秒後強制關機」,
在「執行身分」請輸入權限夠大的使用者帳號,
點擊「設定密碼」後,請輸入使用者密碼,
不勾選「登入後才執行」,
勾選「啟用(已排定的工作會在指定時間執行))」。
http://img265.yfrog.com/i/003h.png/http://img188.imageshack.us/img188/9631/arrow0017.gifhttp://img237.yfrog.com/i/004u.png/

四、於「排程」頁籤中,
在「工作排程」中,選擇「閒置時」,
在「當電腦閒置超過」輸入適當的時間,
在點擊「確定」。
http://img526.yfrog.com/i/005m.png/

五、如此就完成設定的事項了。
http://img4.yfrog.com/i/006eb.png/

六、重新開機後,測試是否會執行,
雖然沒有登入,但是時間一到,仍然會跳出關機的倒數計時。
http://img256.yfrog.com/i/007n.png/

七、再查看一下狀態,已經有成功的執行了。
http://img187.yfrog.com/i/008q.png/

2009年11月20日 星期五

DOS指令開啟兩個檔案

問題來源:

問題內容:
我想寫一個BAT檔

我有兩個程式

1個是火狐優化器...但是打開時需要按下一個鍵(按ENTER也可以)

然後再關掉那個程式,

另1個是...火狐瀏覽器...需要讓它直接打開...但是在這兩個程式中間需要停個幾秒鐘....大約....10秒八!!!

請問要怎樣才有辦法寫出BAT檔??

我不董怎寫按下ENTER的按鍵的語法....

問題答案:
擔心複製後貼上會出錯?可以直接下載已寫好的檔案,這裡下載,(如何下載:請參考這裡

  1. 方法一:
    先優化在執行火狐,啟動時多花一些時間
    StartFox.cmd:
    @echo off
    :: 安裝在其它路徑的話,就要改用 speedyfox /profile:"路徑"
    speedyfox.exe /default_profile

    start "Firefox" "%ProgramFiles%\Firefox\Firefox.exe" %*

  2. 方法二:
    先執行火狐,結束後再
    優化
    LaunchFox.cmd
    @echo off
    set FIREFOX_EXE="%ProgramFiles%\Firefox\Firefox.exe"
    %FIREFOX_EXE% %*

    :WaitFirefoxGone
    nircmd wait 1000
    nircmd waitprocess %FIREFOX_EXE% returnval 1 || goto WaitFirefoxGone

    :: 安裝在其它路徑的話,就要改用 speedyfox /profile:"路徑"
    speedyfox.exe /default_profile
注意事項:
    • 批次檔中,火狐的相關路徑要先自行修改為您的設定,才能正確使用。
    • 不想要看到命令提示字元的視窗,可以執行「StartFox.exe」、「LaunchFox.exe」,它們會用隱藏命令提示字元的方式執行「StartFox.cmd」、「LaunchFox.cmd

2009年11月16日 星期一

DOS 有沒有辦法寫BAT 移除空的資料夾?

問題來源:

問題內容:
DOS 有沒有辦法寫BAT 移除空的資料夾? 常常用BT下載檔案 有時候把檔案砍了 資料夾往往就空再邊 久而久之空的資料夾一堆 !
懶得用檔案總管去看在砍~要怎麼利用DOS 砍空的資料夾 ?或是有其它方式嗎? 資料夾一定是空的才砍 不然砍錯了很麻煩 請賜教! 謝!

問題答案:
擔心複製後貼上會出錯?可以直接下載已寫好的檔案,這裡下載,(如何下載:請參考這裡

使用方式:
red c:\temp

red.cmd:
@echo off

setLocal ENABLEEXTENSIONS

if $%1$ == $$ goto showUsage
if not exist %1 (
dir /b %1
echo.
goto showUsage
)

dir %1 /a:d /b /s | sort /r > $dirList$
echo %1 >> $dirList$
for /f %%l in ($dirList$) do (
rd %%l 2>nul
if not exist %%l echo Remove Directory: %%l
)

goto end

:showUsage
echo Remove Empty Direcoties
echo =====================================================================================
echo Usage:
echo.
echo %0 [drive:]path
echo.

:end
if exist $dirList$ del /f /q $dirList$
endlocal



LinkWithin

Blog Widget by LinkWithin