當前位置:首頁 » 文件傳輸 » ftp匹配文件名
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

ftp匹配文件名

發布時間: 2022-05-06 04:07:37

⑴ FTP 正發送文件的文件名問題

FTP命令詳解

FTP命令是Internet用戶使用最頻繁的命令之一,不論是在DOS還是UNIX操作系統下使用FTP,都會遇到大量的FTP內部命令。熟悉並靈活應用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。

FTP的命令行格式為:ftp -v -d -i -n -g [主機名],其中

-v顯示遠程伺服器的所有響應信息;

-n限制ftp的自動登錄,即不使用;

.n etrc文件;

-d使用調試方式;

-g取消全局文件名。

ftp使用的內部命令如下(中括弧表示可選項):

1.![cmd[args]]:在本地機中執行交互shell,exit回到ftp環境,如:!ls*.zip.

2.$ macro-ame[args]:執行宏定義macro-name.

3.account[password]:提供登錄遠程系統成功後訪問系統資源所需的補充口令。

4.append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。

5.ascii:使用ascii類型傳輸方式。

6.bell:每個命令執行完畢後計算機響鈴一次。

7.bin:使用二進制文件傳輸方式。

8.bye:退出ftp會話過程。

9.case:在使用mget時,將遠程主機文件名中的大寫轉為小寫字母。

10.cd remote-dir:進入遠程主機目錄。

11.cp:進入遠程主機目錄的父目錄。

12.chmod mode file-name:將遠程主機文件file-name的存取方式設置為mode,如:chmod 777 a.out。

13.close:中斷與遠程伺服器的ftp會話(與open對應)。

14.cr:使用asscii方式傳輸文件時,將回車換行轉換為回行。

15.delete remote-file:刪除遠程主機文件。

16.debug[debug-value]:設置調試方式,顯示發送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。

17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地文件local-file。

18.disconnection:同close。

19.form format:將文件傳輸方式設置為format,預設為file方式。

20.get remote-file[local-file]:將遠程主機的文件remote-file傳至本地硬碟的local-file。

21.glob:設置mdelete,mget,mput的文件名擴展,預設時不擴展文件名,同命令行的-g參數。

22.hash:每傳輸1024位元組,顯示一個hash符號(#)。

23.help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。

24.idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。

25.image:設置二進制傳輸方式(同binary)。

26.lcd[dir]:將本地工作目錄切換至dir。

27.ls[remote-dir][local-file]:顯示遠程目錄remote-dir,並存入本地文件local-file。

28.macdef macro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。

29.mdelete[remote-file]:刪除遠程主機文件。

30.mdir remote-files local-file:與dir類似,但可指定多個遠程文件,如:mdir *.o.*.zipoutfile

31.mget remote-files:傳輸多個遠程文件。

32.mkdir dir-name:在遠程主機中建一目錄。

33.mls remote-file local-file:同nlist,但可指定多個文件名。

34.mode[modename]:將文件傳輸方式設置為modename,預設為stream方式。

35.modtime file-name:顯示遠程主機文件的最後修改時間。

36.mput local-file:將多個文件傳輸至遠程主機。

37.newer file-name:如果遠程機中file-name的修改時間比本地硬碟同名文件的時間更近,則重傳該文件。

38.nlist[remote-dir][local-file]:顯示遠程主機目錄的文件清單,並存入本地硬碟的local-file。

39.nmap[inpattern outpattern]:設置文件名映射機制,使得文件傳輸時,文件中的某些字元相互轉換,如:nmap $1.$2.$3[$1,$2].[$2,$3],則傳輸文件a1.a2.a3時,文件名變為a1,a2。該命令特別適用於遠程主機為非UNIX機的情況。

40.ntrans[inchars[outchars]]:設置文件名字元的翻譯機制,如ntrans 1R,則文件名LLL將變為RRR。

41.open host[port]:建立指定ftp伺服器連接,可指定連接埠。

42.passive:進入被動傳輸方式。

43.prompt:設置多個文件傳輸時的交互提示。

44.proxy ftp-cmd:在次要控制連接中,執行一條ftp命令,該命令允許連接兩個ftp伺服器,以在兩個伺服器間傳輸文件。第一條ftp命令必須為open,以首先建立兩個伺服器間的連接。

45.put local-file[remote-file]:將本地文件local-file傳送至遠程主機。

46.pwd:顯示遠程主機的當前工作目錄。

47.quit:同bye,退出ftp會話。

48.quote arg1,arg2...:將參數逐字發至遠程ftp伺服器,如:quote syst.

49.recv remote-file[local-file]:同get。

50.reget remote-file[local-file]:類似於get,但若local-file存在,則從上次傳輸中斷處續傳。

51.rhelp[cmd-name]:請求獲得遠程主機的幫助。

52.rstatus[file-name]:若未指定文件名,則顯示遠程主機的狀態,否則顯示文件狀態。

53.rename[from][to]:更改遠程主機文件名。

54.reset:清除回答隊列。

55.restart marker:從指定的標志marker處,重新開始get或put,如:restart 130。

56.rmdir dir-name:刪除遠程主機目錄。

57.runique:設置文件名唯一性存儲,若文件存在,則在原文件後加後綴..1,.2等。

58.send local-file[remote-file]:同put。

59.sendport:設置PORT命令的使用。

60.site arg1,arg2...:將參數作為SITE命令逐字發送至遠程ftp主機。

61.size file-name:顯示遠程主機文件大小,如:site idle 7200。

62.status:顯示當前ftp狀態。

63.struct[struct-name]:將文件傳輸結構設置為struct-name,預設時使用stream結構。

64.sunique:將遠程主機文件名存儲設置為唯一(與runique對應)。

65.system:顯示遠程主機的操作系統類型。

66.tenex:將文件傳輸類型設置為TENEX機的所需的類型。

67.tick:設置傳輸時的位元組計數器。

68.trace:設置包跟蹤。

69.type[type-name]:設置文件傳輸類型為type-name,預設為ascii,如:type binary,設置二進制傳輸方式。

70.umask[newmask]:將遠程伺服器的預設umask設置為newmask,如:umask 3。

71.user user-name[password][account]:向遠程主機表明自己的身份,需要口令時,必須輸入口令,如:user anonymous my@email。

72.verbose:同命令行的-v參數,即設置詳盡報告方式,ftp伺服器的所有響應都將顯示給用戶,預設為on.

73.?[cmd]:同help。

這個夠全了吧?

⑵ C#如何取得ftp上面的所有文件夾裡面的所有文件名,求源碼。。。。

連接方法:
string ftpServerIP = "";

string ftpUserID = "";

string ftpPassword = "";

string TempPath = Path.GetTempPath();

FtpWebRequest reqFTP;
DataTable dt;
private void Connect(String path)//連接ftp
{

try
{
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(path));
reqFTP.UseBinary = true;
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
}
catch (Exception){
Response.Write("<srcipt>alert('連接失敗!')</script>");
}
獲取方法:
private string[] GetFileList(string path, string WRMethods)
{
string[] downloadFiles;
StringBuilder result = new StringBuilder();
try
{
Connect(path);
reqFTP.Method = WRMethods;
WebResponse response = reqFTP.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.Default);
string line = reader.ReadLine();

while (line != null)
{
result.Append(line);
result.Append("\n");
line = reader.ReadLine();

}
result.Remove(result.ToString().LastIndexOf('\n'), 1);
reader.Close();
response.Close();
return result.ToString().Split('\n');

}

catch (Exception)
{

downloadFiles = null;

return downloadFiles;
}
}
調用:
string[] str = GetFileList("ftp://" + ftpServerIP + "/" + path, WebRequestMethods.Ftp.ListDirectoryDetails);

數組就是ftp文件夾下的所有文件名,如果要判斷ftp根下面的是文件還是文件夾。需要解字元串才行!

⑶ C# 如何獲取ftp目錄下的指定文件名列表

Response = Open(this.Uri, WebRequestMethods.Ftp.ListDirectoryDetails);
StreamReader stream = new StreamReader(Response.GetResponseStream(), Encoding.Default);
string Datastring = stream.ReadToEnd();

⑷ ftp命令的命令進階

ftp [ -d] [ -g ] [ -i ] [ -n ] [ -v] [ -f ] [ -k realm] [-q[-C]][ HostName [ Port ] ]
-C 允許用戶指定:通過 send_file 命令發出的文件必須在網路高速緩沖區(NBC)中經過緩存處理。此標志必須在指定了-q 標志的情況下使用。只有當文件在無保護的情況下以二進制方式發送時此標志才適用。
-d 將有關 ftp 命令操作的調試信息發送給 syslogd 守護進程。如果您指定-d 標志,您必須編輯/etc/syslog.conf 文件並添加下列中的一項:
OR
user.debug FileName
請注意:syslogd 守護進程調試級別包含信息級別消息。
如果不編輯/etc/syslog.conf 文件,則不會產生消息。變更了/etc/syslog.conf 文件之後,請運行 refresh -s syslogd 或 kill -1 SyslogdPID 命令,以通知 syslogd 守護進程其配置文件的變更。關於調試級別的更多信息,請參考/etc/syslog.conf 文件。也請參考 debug 子命令。
-g 禁用文件名中的元字元拓展。解釋元字元可參考為擴展(有時叫做文件名匹配替換)文件名。請參考 glob 子命令。
-i 關閉多文件傳送中的互動式提示。請參考 prompt、mget、mput 和 mdelete 子命令,以取得多文件傳送中的提示的描述。
-n 防止在起始連接中的自動登錄。否則, ftp 命令會搜索$HOME/.netrc 登錄項,該登錄項描述了遠程主機的登錄和初始化過程。請參考 user 子命令。
-q 允許用戶指定:send_file 子常式必須用於在網路上發送文件。只有當文件在無保護的情況下以二進制方式發送時此標志才適用。
-v 顯示遠程伺服器的全部響應,並提供數據傳輸的統計信息。當 ftp 命令的輸出是到終端(如控制台或顯示)時,此顯示方式是預設方式。
如果 stdin 不是終端,除非用戶調用帶有-v 標志的 ftp 命令,或發送 verbose 子命令,否則 ftp 詳細方式將禁用。
-f 導致轉發憑證。如果Kerberos 5 不是當前認證方法,則此標志將被忽略。
-k realm 如果遠程站的域不同於本地系統的域,系統將允許用戶指定遠程站的域。因此,域和DCE 單元是同義的。如果Kerberos 5 不是當前認證方法,則此標志將被忽略。
? 1、[crud[args)1:在本地機中執行交互shell,exit回到FTP環境, 列如:!LS*.zip.
2、$macro-amc[args兒執行宏定義macro-name。
3、account[password]:提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4、append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠系統文件名,則使用本地文件名。
5、ASCii:使用ascⅡ型傳輸方式。
6、bell:每個命令執行完畢後計算機響鈴—次
7、bin:使用二進制文件傳輸方式
8、bye..退出FTP會話過程—
9、case:在使用mget時,將遠程主文件名中的大寫字母轉為小寫字母
10、cdremote·dir:進入遠程主機目錄。
11、cp..進入遠程主機目錄的父目錄。
12、chmodmodefile-name:將遠程主機文件file-name的存取方式設置為mode。列如:chmod777a.OUt。
13、close:中斷與遠程伺服器的FTP會話(與open對應)。
14、cr:使用ASCii「方式傳輸文件時,將回車換行轉換為回行
15、deleteremote-file-刪除遠程主機文件:
16、debugldebug-value3:.設置調試方式,顯示發送至遠程主機的每條命令。例如:debug3,若設為0,表示取消debug。
17、dir[remote-dir][Local-file]:顯示遠程主機目錄,並將結果存入本地文件local-file:
18、disconnection-.同close。
19、formformat:將文件傳輸方式設置為format,預設為file方式。
20、getremote-file[10cal-file]:將遠程主機的文件remote-file傳至本地 硬碟的local-file。
21、glob:設置mdelete,mget,mput的文件名擴展,預設時不擴展文件名,同命令行的-g參數。
22、hash:每傳輸1024位元組,顯示一個hash符號(#)。
23、help[cmd]:顯示FTP內部命令cmd的幫助信息,如.-helpget。
24、idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。
25、image:設置二進制傳輸方式(同binary)。
26、LCD[DIR]:將本地工作目錄切換至dir。
27、LS[remote-DIR][LOCAL-FILE]:顯示遠程目錄remote-dir,並存入本地文local-fileo
28、macdefmacro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。
29、mdelete[remote-file]:刪除遠程主機文件。
30、mdirremote-fileslocal-file:與dlr類似,但可指定多個遠程文件。列如mdir*.O.*.zipoutfiLe。
31、mgetremote-files:傳輸多個遠程文件。
32、mkdirdirname:在遠程主機中建一目錄。
33、misremote-filelocal-file.同nlist,但可指定多個文件名。
34、mode[modename]:將文件傳輸方式設置為modename,預設為stream方式。
35、modtimefile-name..顯示遠程主機文件的最後修改時間。·
36、mputlocal-file:將多個文件傳輸至遠程主機,
37、newerfile-name:如果遠程機中file-name的修改時間比本地硬碟同名文件的時間巨近,則重新傳輸該文件。·

⑸ qt中連接到ftp伺服器上後怎麼獲取服務下所有的文件名

操作方法如下:
@echo off

set h=192.168.1.100
set u=ftpuser
set p=12345678
echo open %h%>ftp.txt
echo %u%>>ftp.txt
echo %p%>>ftp.txt
echo dir>>ftp.txt
echo bye>>ftp.txt
ftp -s:ftp.txt>ftpdir.txt
echo open %h%>ftp.txt
echo %u%>>ftp.txt
echo %p%>>ftp.txt
for /f "tokens=4" %%i in ('findstr "<DIR>" ftpdir.txt') do (
echo cd %%~i>>ftp.txt
echo dir>>ftp.txt
echo cd ..>>ftp.txt)
echo bye>>ftp.txt
ftp -s:ftp.txt>ftpfile.txt
notepad ftpfile.txt

⑹ FTP軟體應如何設置才能支持帶中文文件名的文件正常上傳下載

ftp上傳文件時,必須使用英文字元或數據的文件名才能上傳,或者是兩個字的漢字才能上傳到伺服器的話:
1、進入ServerU管理端界面,點擊「伺服器限制和設置」分類功能按鈕,

2、在ServerU伺服器限制和設置界面,選擇「FTP設置」頁簽,點擊窗口下面的「全局設置」按鈕。

3、在打開的「FTP命令屬性」界面,去掉最後一行的勾選,即不要勾選」對所有已收發的路徑和文件名使用UTF-8編碼「。

4、選擇「FTP設置」頁簽,禁用」OPTS UTF8 「,
完成上面的兩處改變後,無法上傳中文名稱的文件的問題應該已經解決了。

⑺ linux下如何用FTP下載含有特定文件名的文件

如果命令行下載只能一個一個下,用客戶端直接多個一起下;或者乾脆用sftp下載就可以record* 全部下載了

⑻ 怎麼獲得FTP伺服器上目錄下的所有文件名和子目錄

不要使用tidftp,長時間搜索會出現死鎖現象,使用WinInet單元
procere TFtpScan.Execute;
var
FFTPHandle: HINTERNET;
FInetHandle: HINTERNET;
Enum: HINTERNET;
FFindFileData: WIN32_FIND_DATA;
R: Boolean;
FFileName, DataStr: string;
TempErrorCode: Cardinal;
begin

⑼ FTP獲取文件名以及文件路徑

既然是伺服器,而且是linux 你用一個tomcat 當做伺服器,可以配置一下tomcat,就可以直接ftp 模式訪問文件夾了。

⑽ FTP的常用命令和使用方法

FTP命令是Internet用戶使用最頻繁的命令之一,不論是在DOS還是UNIX操作系統下使用FTP,都會遇到大量的FTP內部命令。熟悉並靈活應用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。下面以Win9x的DOS窗口中的FTP命令為例,介紹一下其用法。(本站註:若想在純DOS下使用FTP命令,則需先載入網路設備如網卡或數據機的Packet驅動程序,再使用本站「網路工具」中的Wattcp FTP程序,其用法與下面介紹的類似,詳情請見本站的「DOS使用」欄目)

FTP的命令行格式為: ftp -v -d -i -n -g [主機名] ,其中
-v 顯示遠程伺服器的所有響應信息;
-n 限制ftp的自動登錄,即不使用;
.n etrc文件;
-d 使用調試方式;
-g 取消全局文件名。
FTP使用的內部命令如下(中括弧表示可選項):
1.![cmd[args]:在本地機中執行交互shell,exit回到ftp環境,如:!ls*.zip
2.$ macro-ame[args]: 執行宏定義macro-name。
3.account[password]: 提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4.append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。
5.ascii:使用ascii類型傳輸方式。
6.bell:每個命令執行完畢後計算機響鈴一次。
7.bin:使用二進制文件傳輸方式。
8.bye:退出ftp會話過程。
9.case:在使用mget時,將遠程主機文件名中的大寫轉為小寫字母。
10.cd remote-dir:進入遠程主機目錄。
11.cp:進入遠程主機目錄的父目錄。
12.chmod mode file-name:將遠程主機文件file-name的存取方式設置為mode,如:chmod 777 a.out。
13.close:中斷與遠程伺服器的ftp會話(與open對應)。
14.cr:使用asscii方式傳輸文件時,將回車換行轉換為回行。
15.delete remote-file:刪除遠程主機文件。
16.debug[debug-value]:設置調試方式, 顯示發送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。
17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地文件local-file。
18.disconnection:同close。
19.form format:將文件傳輸方式設置為format,預設為file方式。
20.get remote-file[local-file]: 將遠程主機的文件remote-file傳至本地硬碟的local-file。
21.glob:設置mdelete,mget,mput的文件名擴展,預設時不擴展文件名,同命令行的-g參數。
22.hash:每傳輸1024位元組,顯示一個hash符號(#)。
23.help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。
24.idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。
25.image:設置二進制傳輸方式(同binary)。
26.lcd[dir]:將本地工作目錄切換至dir。
27.ls[remote-dir][local-file]:顯示遠程目錄remote-dir, 並存入本地文件local-file。
28.macdef macro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。
29.mdelete[remote-file]:刪除遠程主機文件。
30.mdir remote-files local-file:與dir類似,但可指定多個遠程文件,如:mdir *.o.*.zipoutfile 。
31.mget remote-files:傳輸多個遠程文件。
32.mkdir dir-name:在遠程主機中建一目錄。
33.mls remote-file local-file:同nlist,但可指定多個文件名。
34.mode[modename]:將文件傳輸方式設置為modename, 預設為stream方式。
35.modtime file-name:顯示遠程主機文件的最後修改時間。
36.mput local-file:將多個文件傳輸至遠程主機。
37.newer file-name: 如果遠程機中file-name的修改時間比本地硬碟同名文件的時間更近,則重傳該文件。
38.nlist[remote-dir][local-file]:顯示遠程主機目錄的文件清單,並存入本地硬碟的local-file。
39.nmap[inpattern outpattern]:設置文件名映射機制, 使得文件傳輸時,文件中的某些字元相互轉換, 如:nmap $1.$2.$3[$1,$2].[$2,$3],則傳輸文件a1.a2.a3時,文件名變為a1,a2。 該命令特別適用於遠程主機為非UNIX機的情況。
40.ntrans[inchars[outchars]:設置文件名字元的翻譯機制,如ntrans1R,則文件名LLL將變為RRR。
41.open host[port]:建立指定ftp伺服器連接,可指定連接埠。
42.passive:進入被動傳輸方式。
43.prompt:設置多個文件傳輸時的交互提示。
44.proxy ftp-cmd:在次要控制連接中,執行一條ftp命令, 該命令允許連接兩個ftp伺服器,以在兩個伺服器間傳輸文件。第一條ftp命令必須為open,以首先建立兩個伺服器間的連接。
45.put local-file[remote-file]:將本地文件local-file傳送至遠程主機。
46.pwd:顯示遠程主機的當前工作目錄。
47.quit:同bye,退出ftp會話。
48.quote arg1,arg2...:將參數逐字發至遠程ftp伺服器,如:quote syst.
49.recv remote-file[local-file]:同get。
50.reget remote-file[local-file]:類似於get, 但若local-file存在,則從上次傳輸中斷處續傳。
51.rhelp[cmd-name]:請求獲得遠程主機的幫助。
52.rstatus[file-name]:若未指定文件名,則顯示遠程主機的狀態, 否則顯示文件狀態。
53.rename[from][to]:更改遠程主機文件名。
54.reset:清除回答隊列。
55.restart marker:從指定的標志marker處,重新開始get或put,如:restart 130。
56.rmdir dir-name:刪除遠程主機目錄。
57.runique:設置文件名唯一性存儲,若文件存在,則在原文件後加後綴.1,.2等。
58.send local-file[remote-file]:同put。
59.sendport:設置PORT命令的使用。
60.site arg1,arg2...:將參數作為SITE命令逐字發送至遠程ftp主機。
61.size file-name:顯示遠程主機文件大小,如:site idle 7200。
62.status:顯示當前ftp狀態。
63.struct[struct-name]:將文件傳輸結構設置為struct-name, 預設時使用stream結構。
64.sunique:將遠程主機文件名存儲設置為唯一(與runique對應)。
65.system:顯示遠程主機的操作系統類型。
66.tenex:將文件傳輸類型設置為TENEX機的所需的類型。
67.tick:設置傳輸時的位元組計數器。
68.trace:設置包跟蹤。
69.type[type-name]:設置文件傳輸類型為type-name,預設為ascii,如:type binary,設置二進制傳輸方式。
70.umask[newmask]:將遠程伺服器的預設umask設置為newmask,如:umask 3
71.user user-name[password][account]:向遠程主機表明自己的身份,需要口令時,必須輸入口令,如:user anonymous my@email。
72.verbose:同命令行的-v參數,即設置詳盡報告方式,ftp 伺服器的所有響應都將顯示給用戶,預設為on.
73.?[cmd]:同help.