當前位置:首頁 » 編程軟體 » lds腳本

lds腳本

發布時間: 2022-06-20 13:12:56

linux lds 腳本是直接生成嗎

Linux中,周期執行的任務一般由cron這個守護進程來處理ps-ef|grepcroncron讀取一個或多個配置文件,這些配置文件中包含了命令行及其調用時間。cron的配置文件稱為「crontab」,是「crontable」的簡寫。一、cron在3個地方查找配置文件(設置shell腳本):1、/var/spool/cron/yanggang這個目錄下存放的是每個用戶(包括root)的crontab任務,每個任務以創建者的名字命名,比如用戶tom建的crontab任務對應的文件就是/var/spool/cron/tomyanggang@barry$sudols-l/var/spool/cron/(或有時是/var/spool/cron/crontabs/)-rw-------1rootcrontab10712011-09-1917:20root-rw-------1yanggangcrontab11762011-09-2411:07yanggang一般一個用戶最多隻有一個crontab文件(如:root,yanggang等),其對應日誌在/var/spool/mail/root(或/var/spool/mail/yanggang)文件里2、/etc/crontab這個文件負責安排由系統管理員制定的維護系統以及其他任務的crontab。SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/#.----------------minute(0-59)#|.-------------hour(0-23)#||.----------dayofmonth(1-31)#|||.-------month(1-12)ORjan,feb,mar,apr#||||.----dayofweek(0-6)(Sunday=0or7)OR#sun,mon,tue,wed,thu,fri,sat#|||||#*****commandtobeexecuted例如:*/5****root/usr/libexec/atrunminute:代表一小時內的第幾分,范圍0-59。hour:代表一天中的第幾小時,范圍0-23。mday:代表一個月中的第幾天,范圍1-31。month:代表一年中第幾個月,范圍1-12。wday:代表星期幾,范圍0-7(0及7都是星期天)。who:要使用什麼身份執行該指令,當您使用crontab-e時,不必加此欄位。command:所要執行的指令。3、/etc/cron.d/這個目錄用來存放任何要執行的crontab文件或腳本。二、許可權crontab許可權問題到/var/adm/cron/下一看,文件cron.allow和cron.deny是否存在用法如下:1、如果兩個文件都不存在,則只有root用戶才能使用crontab命令。2、如果cron.allow存在但cron.deny不存在,則只有列在cron.allow文件里的用戶才能使用crontab命令,如果root用戶也不在裡面,則root用戶也不能使用crontab。3、如果cron.allow不存在,cron.deny存在,則只有列在cron.deny文件裡面的用戶不能使用crontab命令,其它用戶都能使用。4、如果兩個文件都存在,則列在cron.allow文件中而且沒有列在cron.deny中的用戶可以使用crontab,如果兩個文件中都有同一個用戶,以cron.allow文件裡面是否有該用戶為准,如果cron.allow中有該用戶,則可以使用crontab命令。AIX中普通用戶默認都有crontab許可權,如果要限制用戶使用crontab,就需要編輯/var/adm/cron/cron.denyHP-UNIX中默認普通用戶沒得crontab許可權,要想放開普通用戶的crontab許可權可以編三、創建cron腳本第一步:寫cron腳本文件,命名為crontest.cron。15,30,45,59****echo"xgmtest..">>xgmtest.txt表示,每隔15分鍾,執行列印一次命令第二步:添加定時任務。執行命令「crontabcrontest.cron」。搞定第三步:"crontab-l"查看定時任務是否成功或者檢測/var/spool/cron下是否生成對應cron腳本四、cron服務cron是一個linux下的定時執行工具,可以在無需人工干預的情況下運行作業。/sbin/servicecrondstart//啟動服務/sbin/servicecrondstop//關閉服務/sbin/servicecrondrestart//重啟服務/sbin/servicecrondreload//重新載入配置/sbin/servicecrondstatus//查看服務狀態例如:使用sudo停止與啟動服務yanggang@barry$sudoservicecronstopcronstop/waitingyanggang@barry$sudoservicecronstartcronstart/running,process7502五、crontab用法crontab命令用於安裝、刪除或者列出用於驅動cron後台進程的表格,用戶把需要執行的命令序列放到crontab文件中以獲得執行。每個用戶都可以有自己的crontab文件,/var/spool/cron下的crontab文件不可以直接創建或者直接修改,該crontab文件是通過crontab-e命令創建的在crontab文件中如何輸入需要執行的命令和時間,該文件中每行都包括六個域,其中前五個域是指定命令被執行的時間,最後一個域是要被執行的命令。每個域之間使用空格或者製表符分隔。格式如下:minutehourday-of-monthmonth-of-yearday-of-weekcommands合法值00-5900-2301-3101-120-6(0issunday)除了數字還有幾個個特殊的符號就是"*"、"/"與"-"、",",*代表所有的取值范圍內的數字"/"代表每的意思,"/5"表示每5個單位,"-"代表從某個數字到某個數字,","分開幾個離散的數字。-l在標准輸出上顯示當前的crontab。-r刪除當前的crontab文件。-e使用VISUAL或者EDITOR環境變數所指的編輯器編輯當前的crontab文件。當結束編輯離開時,編輯後的文件將自動安裝。幾個例子:每天早上6點06***echo"Goodmorning.">>/tmp/test.txt//注意單純echo,從屏幕上看不到任何輸出,因為cron把任何輸出都email到root的信箱了。每兩個小時0*/2***echo"Haveabreaknow.">>/tmp/test.txt晚上11點到早上8點之間每兩個小時和早上八點023-7/2,8***echo"Haveagooddream">>/tmp/test.txt每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點0114*1-3commandline1月1日早上4點0411*commandlineSHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root//如果出現錯誤,或者有數據輸出,數據作為郵件發給這個帳號HOME=/每小時(第一分鍾)執行/etc/cron.hourly內的腳本01****rootrun-parts/etc/cron.hourly每天(凌晨4:02)執行/etc/cron.daily內的腳本024***rootrun-parts/etc/cron.daily每星期(周日凌晨4:22)執行/etc/cron.weekly內的腳本224**0rootrun-parts/etc/cron.weekly每月(1號凌晨4:42)去執行/etc/cron.monthly內的腳本4241**rootrun-parts/etc/cron.monthly注意:"run-parts"這個參數了,如果去掉這個參數的話,後面就可以寫要運行的某個腳本名,而不是文件夾名。每天的下午4點、5點、6點的5min、15min、25min、35min、45min、55min時執行命令。5,15,25,35,45,5516,17,18***command每周一,三,五的下午3:00系統進入維護狀態,重新啟動系統。0015**1,3,5shutdown-r+5每小時的10分,40分執行用戶目錄下的innd/bbslin這個指令:10,40****innd/bbslink每小時的1分執行用戶目錄下的bin/account這個指令:1****bin/account每天早晨三點二十分執行用戶目錄下如下所示的兩個指令(每個指令以;分隔):203***(/bin/rm-fexpire.lslogins.bad;bin/expire$#@62;expire.1st)每年的一月和四月,4號到9號的3點12分和3點55分執行/bin/rm-fexpire.1st這個指令,並把結果添加在mm.txt這個文件之後(mm.txt文件位於用戶自己的目錄位置)。12,5534-91,4*/bin/rm-fexpire.1st$#@62;$#@62;mm.txt六、幾個問題crond進程沒有運行1.啟動crond進程/etc/init.d/crondstart2.開機自啟動crond進程chkconfigcrondoncrontab編輯:輸入編輯命令:crontab-e#mhdommondowcommandSHELL=/bin/bash30****cd/home/barry/top800/top10/top10_fruits/&&./top10_all.shCtrl+O(寫入)——》enter鍵(保存文件名)——》Ctrl+X(退出)輸入查看命令:crontab-l#mhdommondowcommandSHELL=/bin/bash30****cd/home/barry/top800/top10/top10_fruits/&&./top10_all.sh(建議使用此方式)語法錯誤:Syntaxerror:"("unexpected路徑錯誤:在/var/spool/crontab/yanggang中,添加了如下命令,在日誌文件/var/spool/mail/yanggang中提示找不到xxx.sh路徑30****/home/barry/top800/top10/top10_fruits/top10_all.sh或30****bash/home/barry/top800/top10/top10_fruits/top10_all.sh這是因為在crontab中使用了絕對路徑執行腳本top10_all.sh,因此在腳本top10_all.sh中引用的其它腳本也都需要使用絕對路徑,才能被crontab找到並執行如何避免絕對路徑復雜的設置呢,如上文六、幾個問題所示,採用如下格式:30****cd/home/barry/top800/top10/top10_fruits/&&./top10_all.sh(建議使用此方式,先進入該目錄,然後在執行腳本;否則,執行腳本中的其它腳本都需要加絕對路徑)

㈡ Keil編譯程序後,出現ARM_LIB_HEAP和 RW_IRAM1 重疊的問題。

這個 其實就是 ld 連接程序的腳本,和Linux下的.lds文件類似!

ER_IROM1 0x08004000 0x08020000
{
vectors.o (VECT, +First)
init.o (INIT)
* (+RO)
}
意思就是 將 vectors.o 目標文件 中的 VECT 段,和 init.o的INIT 段 還有 所有目標文件的只讀代碼段 連接到 0x08004000 0x0802000 地址上

不清楚 可以追問 或者google lds 文件! 呵呵!

㈢ gcc編譯程序時怎麼連接.lds

有兩種使用方法:

1,lds作為外置腳本,參與對gcc鏈接過程的控制。使用方法為
gcc XXX.c XX.lds。
gcc能夠自動識別你的文件列中後綴不能識別的文件,作為鏈接腳本使用。這樣編譯出來的程序,還是要使用gcc默認的lds腳本,你的腳本只是一個輔助。

2,lds代替系統的腳本。
這種要先使用gcc -c參數編譯你的源程序,編譯出來的.o文件,使用命令ld -T來指定lds文件鏈接到一起。

㈣ 星際戰甲 求鞭子腳本

這腳本很極限,所以不一定適用
但是注釋都給了就別說自己調不來了
KeyDown "W", 1
Delay 20
For 100//循環
KeyDown "Alt", 1
KeyPress "K", 1
KeyUp "Alt", 1
Delay 305//狂暴p8
Next
KeyUp "W", 1
Delay 10
KeyDown "S", 1
Delay 550
KeyDown "Alt", 1
Delay 10
KeyPress "K", 1
Delay 230//滑動
KeyUp "Alt", 1
KeyUp "S", 1
看到那幾個的注釋沒,
「循環」:循環次數不用教了吧
「狂暴p8」:攻速加了8點狂暴p,如果沒滑起可以可以自己把數字調大
「滑動」:如果你想多向後滑可以把這個地方調大
是不是在吧里看到過?
看到過就說明我還寫的不錯?那玩意就是本人貼的

㈤ 求星際戰甲幾個掛機腳本,20分一個

<pre t="code" l="vb">Hwnd = Plugin.Window.MousePoint()
Rem 標記(1)
For i=1 To 90
Call Plugin.Bkgnd.KeyDown(Hwnd, 87)
Delay 100
Call Plugin.Bkgnd.KeyDown(Hwnd, 65)
Delay 25
Call Plugin.Bkgnd.KeyPress(Hwnd, 69)
Delay 100
Call Plugin.Bkgnd.KeyUp(Hwnd, 65)
Delay 100
Call Plugin.Bkgnd.KeyUp(Hwnd, 87)
Delay 120
Next
Delay 500
Call Plugin.Bkgnd.KeyPress(Hwnd, 83)
Delay 500
Call Plugin.Bkgnd.KeyDown(Hwnd, 83)
Delay 10
Call Plugin.Bkgnd.KeyPress(Hwnd, 83)
Delay 500
Call Plugin.Bkgnd.KeyUp(Hwnd, 83)
Delay 100
Goto 標記(1)
//後台操作對某些窗口無效

㈥ linux 下的lds鏈接腳本有沒有什麼書籍

Linux下有兩個清屏命令: clear 這個命令將會刷新屏幕,本質上只是讓終端顯示頁向後翻了一頁,如果向上滾動屏幕還可以看到之前的操作信息。一般都會使用這個命令。 reset 這個命令將完全刷新終端屏幕,之前的終端輸入操作信息將都會被清空,這樣雖然比較清爽,但整個命令過程速度有點慢,使用較少。

㈦ 電腦開機跳出這種腳本,很長時間了,誰知道這是什麼原因

驅動器A:是3寸磁碟驅動器。也就是老配置中的3寸軟磁碟。
關閉它,可以開機進入 BIOS ,在基本配置信息項中,關閉A驅動器。(也有在磁碟配置信息項目中,查看並選擇關閉就可以了。)

㈧ 請問arm-linux-gcc和arm-linux-ld還有arm-linux-obj之間是什麼關系

arm-linux-ld 是連接器,它把一些目標和歸檔文件結合在一起,重定位數據,並連接符號引用。通常,建立一個新編譯程序的最後一步就是調用ld。

arm-linux-gcc -wall -O2 -c -o $@ $<
-o 只激活預處理,編譯,和匯編,也就是他只把程序做成obj文件
-Wall 指定產生全部的警告信息
-O2 編譯器對程序提供的編譯優化選項,在編譯的時候使用該選項,可以使生成的執行文件的執行效率提高
-c 表示只要求編譯器進行編譯,而不要進行鏈接,生成以源文件的文件名命名但把其後綴由 .c 或 .cc 變成 .o 的目標文件
-S 只激活預處理和編譯,就是指把文件編譯成為匯編代碼
arm-linux-ld 直接指定代碼段,數據段,BSS段的起始地址
-Tbss ADDRESS Set address of .bss section

-Tdata ADDRESS Set address of .data section

-Ttext ADDRESS Set address of .text section
示例:
${CROSS}ld -Ttext=0x33000000 led.o -o led.elf
使用連接腳本設置地址:
arm-linux-ld -Tbeep.lds start.o beep.o -o beep.elf
其中beep.lds 為連接腳本如下:
arm-linux-obj被用來復制一個目標文件的內容到另一個文件中,可用於不同源文件的之間的格式轉換
示例:
arm-linux-obj –o binary –S elf_file bin_file
常用的選項:
input-file , outflie
輸入和輸出文件,如果沒有outfile,則輸出文件名為輸入文件名
2.-l bfdname或—input-target=bfdname
用來指明源文件的格式,bfdname是BFD庫中描述的標准格式名,如果沒指明,則arm-linux-obj自己分析
3.-O bfdname 輸出的格式
4.-F bfdname 同時指明源文件,目的文件的格式
5.-R sectionname 從輸出文件中刪除掉所有名為sectionname的段
6.-S 不從源文件中復制重定位信息和符號信息到目標文件中
7.-g 不從源文件中復制調試符號到目標文件中
arm-linux-objmp
查看目標文件(.o文件)和庫文件(.a文件)信息
arm-linux-objmp -D -m arm beep.elf > beep.dis
-D 顯示文件中所有匯編信息
-m machine

指定反匯編目標文件時使用的架構,當待反匯編文件本身沒有描述架構信息的時候(比如S-records),這個選項很有用。可以用-i選項列出這里能夠指定的架構.
[guowenxue@localhost asm_c_buzzer]$ cat beep.lds
/***********************************************************************
* File: beep.lds
* Version: 1.0.0
* Copyright: 2011 (c) Guo Wenxue <[email protected]>
* Description: Cross tool link text, refer to u-boot.lds
* ChangeLog: 1, Release initial version on "Mon Mar 21 21:09:52 CST 2011"
*
**********************************************************************/
OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
OUTPUT_ARCH(arm)
ENTRY(_start)
SECTIONS{
. = 0x33000000;
.text : {

*(.text)
*(.rodata)
}

.data ALIGN(4): {

*(.data)

}
.bss ALIGN(4): {

*(.bss)

}

}

[guowenxue@localhost asm_c_buzzer]$ cat makefile

# ***********************************************************************

# * File: makefile

# * Version: 1.0.0

# * Copyright: 2011 (c) Guo Wenxue <[email protected]>

# * Description: Makefile used to cross compile the ASM and C source code

# * ChangeLog: 1, Release initial version on "Mon Mar 21 21:09:52 CST 2011"

# *
# ***********************************************************************
CROSS = /opt/buildroot-2011.02/arm920t/usr/bin/arm-linux-
CFLAGS =
beep.bin: start.S beep.c
arm-linux-gcc $(CFLAGS) -c -o start.o start.S

arm-linux-gcc $(CFLAGS) -c -o beep.o beep.c

arm-linux-ld -Tbeep.lds start.o beep.o -o beep.elf

arm-linux-obj -O binary -S beep.elf beep.bin

rm -f *.elf *.o
install:
cp beep.bin ~/winxp -f --reply=yes
clean:
rm -f *.elf *.o
rm -f beep.bin

㈨ (ARM + Linux)GNU鏈接腳本中的".ARM.attributes"是什麼意思

所謂gnu鏈接腳本,其實一般都是lds腳本,或者說是elf格式的bin文件組成的腳本文件,主要是告訴你代碼是怎麼排列在elf文件終,至於為啥要燒到arm,其實一般都燒錄在flash中的,然後arm引導程序啟動就需要從flash獲取機器貓,也就是你說的那些段,常見的有data,bss,text,rely等

熱點內容
電腦我的世界伺服器游戲幣 發布:2025-05-16 05:27:25 瀏覽:487
索尼手機為什麼不能用安卓10 發布:2025-05-16 05:18:46 瀏覽:784
蔚來es6選擇哪些配置實用 發布:2025-05-16 05:18:05 瀏覽:130
小米如何掃碼wifi密碼 發布:2025-05-16 05:13:38 瀏覽:807
樓層密碼是什麼意思 發布:2025-05-16 05:13:37 瀏覽:13
創建文件夾失敗 發布:2025-05-16 05:12:59 瀏覽:396
電腦上如何查詢自己的配置 發布:2025-05-16 05:06:36 瀏覽:105
sql中去重 發布:2025-05-16 04:55:06 瀏覽:893
dwr上傳圖片 發布:2025-05-16 04:49:46 瀏覽:122
base64加密的圖片 發布:2025-05-16 04:35:46 瀏覽:356