如果是相對路徑無論windows還是linux都是一樣的。
如果是絕對路徑,只需要看好配置文件所在linux的目錄,其他的操作和windows一樣(例如:linux【/usr/local/src/1.config】,windows【c:/1.config】)
使用File就可以直接讀取了。
B. java程序怎樣讀取linux系統下的文件
java是跨平台語言,在linux上讀文件跟在windows上讀文件是一樣的 只是文件路徑不一樣,可以用File對象和FileInputSteam來讀取。但要注意文件編碼問題。
如果有中文請做適當的編碼轉換,通常情況下Linux的默認字元編碼為UTF-8編碼方式,項目可以直接採用utf8編碼方式操作.用System.getProperty("file.encoding")可檢查系統編碼格式。可改操作系統的文件系統編碼,vi /etc/profile,在文件末尾加上
export LANG="zh_CN.GBK"
export LC_ALL="zh_CN.GBK"
編碼轉換代碼:new String(files[i].getName().getBytes("GBK"),"UTF-8");
文件操作的核心代碼請參考下面代碼:
String path= "/home/";
path= "/home/multiverse/Repository/PMEPGImport";
File file=new File(path);
File[] tempList = file.listFiles();
for (int i = 0; i < tempList.length; i++) {
if (tempList[i].isFile()) {
//FileInputStream fis = new FileInputStream("fileName");
//InputStreamReader isr = new InputStreamReader(fis,"utf-8");
StringBuffer buffer = new StringBuffer();
String text;
BufferedReader input = new BufferedReader (new FileReader(tempList[i]));
while((text = input.readLine()) != null)
buffer.append(text +"/n"); }
if (tempList[i].isDirectory()) {
System.out.println("文件夾:"+tempList[i]);
}
}
C. java上傳文件到linux
1,問題引入
在linux下開發的上傳模塊,在windows下無法運行,提示找不到文件目錄或文件
2,原因
主要是因為linux和windows下由於用到了絕對路徑,而文件路徑間隔符不一樣導致的,,
3,解決方法
使用File.separator做文件間隔符,
注意:
在java中\t \a \b 等一般都有特別含義,所以文件路徑為:
String str = C:\a.txt (1)
則如果直接創建文件
File file = new File(str); (2)
則在(1)中就會出錯,
所以正確通用的的方法是:
String separator = File.separator;
String str1 = "C:"+separator+"a.txt"; (或者String str1 = "C:\\a.txt)
File file = new File(str1);
同理在linux下也是一樣,,,
D. linux查看路徑命令
Linux系統下想要查看當前的路徑,那我們該使用那個命令呢?下面由我為大家整理了linux查看路徑命令的相關知識,希望對大家有幫助。
目錄
linux查看路徑命令
linux查看路徑的其他命令
linux下查找某個文件位置的方法
查看當前路徑命令:pwd
pwd命令能夠顯示當前所處的路徑。
這個命令比較簡單,如果有時在操作過程中忘記了當前的路徑,則可以通過此命令來查看路徑,其執行方式為:
# pwd /home/samlee
第一行為運行的命令,第二行的內容為運行pwd命令後顯示的信息,即顯示用戶當前所在的工作目錄的路徑為/home/samlee。
提示:
應該經常使用pwd命令。Linux的目錄結構非常復雜,一個小小的分支就可能會有十幾層目錄,就好像是個森林,所以Linux不會像Windows那樣把全路徑寫在提示符里,那樣太長了。
<<<
whereis 用來查看一個命令或者文件所在的絕對路徑,而 which 用來查看當前要執行的命令所在的路徑。
下面舉個例子來說明。加入你的linux系統上裝了多個版本的java。如果你直接在命令行敲命令 "java -version" ,會得到一個結果。但是,你知道是哪一個路徑下的java在執行嗎?如果想知道,可以用 which 命令:
which java
得到的結果就是系統默認執行的java所在的路徑。
如果使用命令: whereis java
那麼你會得到很多條結果,因為這個命令把所有包含java(不管是文件還是文件夾)的路徑都列了出來。
<<<
一.通過文件名查找法:
舉例說明,假設你忘記了httpd.conf這個文件在系統的哪個目錄 下,甚至在系統的某個地方也不知道,則這是可以使用如下命令:
find / -name httpd.conf
這個命令語法看起來很容易就明白了,就是直接在find後面寫上 -name,表明要求系統按照文件名查找,最後寫上httpd.conf這個目標文件名即可。稍等一會系統會在計算機屏幕上顯示出查找結果列表:
etc/httpd/conf/httpd.conf
這就是httpd.conf這個文件在Linux系統中的完整路徑。查找成功。
如果輸入以上查找命令後系統並沒有顯示出結果,那麼不要以為系統沒有執行find / -name httpd.conf命令,而可能是你的系統中沒有安裝Apache伺服器,這時只要你安裝了ApacheWeb伺服器,然後再使用find / -name httpd.conf就能找到這個配置文件了。
二.無錯誤查找技巧:
在Linux系統中「find」命令是大多數系統用戶都可以使用的命令,並不是ROOT系統管理員的專利。但是普通用戶使用「find」命令時也有可 能遇到這樣的問題,那就是Linux系統中系統管理員ROOT可以把某些文件目錄設置成禁止訪問模式。這樣普通用戶就沒有許可權用「find」命令來查詢這 些目錄或者文件。當普通用戶使用「find」命令來查詢這些文件目錄是,往往會出現"Permissiondenied."(禁止訪問)字樣。系統將無法 查詢到你想要的文件。為了避免這樣的錯誤,我們可是使用轉移錯誤提示的方法嘗試著查找文件,例如輸入:
find / -name access_log 2>/dev/null
這個方法是把查找錯誤提示轉移到特定的目錄中去。系統執行這個命令後,遇到錯誤的信息就直接輸送到stderrstream2 中,access_log2就是表明系統將把錯誤信息輸送到stderrstream2中,/dev/null是一個特殊的文件,表明空的或者錯誤的信 息,這樣查詢到的錯誤信息將被轉移了,不會再顯示了。
在Linux系統查找文件也會遇到這樣一個實際問題。如果我們在整個硬碟,這個系統中查找某個文件就要花費相當長的一段時間,特別是大型Linux系 統和容量較大的硬碟,文件放在套嵌很深的目錄中的時候。如果我們知道了這個文件存放在某個大的目錄中,那麼只要在這個目錄中往下找就能節省很多時間了。使 用find /etc -name httpd.conf就可以解決這個問題。上面的命令就是表示在etc目錄中查詢httpd.conf這個文件。這里再說明一下「/」這個函數符號的含 義,如果輸入「find /」就是表示要求Linux系統在整個ROOT目錄下查找文件,也就是在整個硬碟上查找文件,而「find /etc」就是只在
etc目錄下查找文件。因為「find /etc」表示只在etc目錄下查找文件,所以查找的速度就相應要快很多了。
三.根據部分文件名查找方法:
例如我們知道某個文件包含有srm這3個字母,那麼要找到系統中所有包含有這3個字母的文件是可以實現 的,輸入:
find /etc -name '_srm_'
這個命令表明了Linux系統將在/etc整個目錄中查找所有的包含有srm這3個字母的文件,比如absrmyz,tibc.srm等等符合條件的文件都能顯示出來。如果你還知道這個文件是由srm 這3個字母打頭的,那麼我們還可以省略最前面的星號,命令如下:
find/etc -name 'srm_'
這是只有像srmyz這樣的文件才被查找出來,像absrmyz或者absrm這樣的文件都不符合要求,不被顯示,這樣查找文件的效率和可靠性就大大增強了。
四.根據文件的特徵查詢方法:
如果只知道某個文件的大小,修改日期等特徵也可以使用「find」命令查找出來,這和WINDOWS系統中的「搜索」功能是基本相同的。在微軟的「搜 索」中,「搜索助理」使得搜索文件和文件夾、列印機、用戶以及網路中的其他計算機更加容易。它甚至使在Internet上搜索更加容易。「搜索助理」還包 括一個索引服務,該服務維護了計算機中所有文件的索引,使得搜索速度更快。使用「搜索助理」時,用戶可以指定多個搜索標准。例如,用戶可以按名稱、類型及 大小搜索文件和文件夾。用戶甚至可以搜索包含特定文本的文件。如果用戶正使用Active Directory,這時還可以搜索帶有特定名稱或位置的列印機。
例如我們知道一個Linux文件大小為1,500bytes,那麼我們可是使用如下命令來查詢find /-size
1500c,字元c表明這個要查找的文件的大小是以bytes為單位。如果我們連這個文件的具體大小都不知道,那麼在Linux中還可以進行模糊查找方式 來解決。例如我們輸入find /-size+10000000c這個命令,則標明我們指定系統在根目錄中查找出大於10000000位元組的文件並顯示出來。命令中的「+」是表示要求系 統只列出大於指定大小的文件,而使用「-」則表示要求系統列出小於指定大小的文件。下面的列表就是在Linux使用不同「find"命令後系統所要作出的 查找動作,從中我們很容易看出在Linux中使用「find」命令的方式是很多的,「find」命令查找文件只要靈活應用,絲毫不比在WINDOWS中查 找能力差。
find / -amin -10 # 查找在系統中最後10分鍾訪問的文件
find / -atime -2 # 查找在系統中最後48小時訪問的文件
find / -empty # 查找在系統中為空的文件或者文件夾
find / -group cat # 查找在系統中屬於groupcat的文件
find / -mmin -5 # 查找在系統中最後5分鍾里修改過的文件
find / -mtime -1 #查找在系統中最後24小時里修改過的文件
find / -nouser #查找在系統中屬於作廢用戶的文件
find / -user fred #查找在系統中屬於FRED這個用戶的文件
<<<
linux查看路徑命令相關 文章 :
★ linux查看路徑命令
★ linux如何查找命令的路徑
★ linux查詢路徑命令
★ Linux系統中查看當前路徑的命令
★ linux查詢命令路徑
★ Linux中文件查找命令總結
★ linux查詢目錄命令
★ liunx find(文件查找)命令的介紹
★ Linux系統中tracert命令使用詳解
var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm..com/hm.js?"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();E. Linux中怎樣用命令啟動後台java進程
java -jar 是啟動一個jar包文件的,java 文件名 是啟動單個文件的 關機後進程就關了...
F. linux下 Java如何獲取文件的絕對路徑
需要使用路徑時,用下面的方法取得項目根目錄的絕對路徑(Tools為方法類)
public static String getRootPath() {
String classPath = Tools.class.getClassLoader().getResource("/").getPath();
String rootPath = "";
//windows下
if("\\".equals(File.separator)){
rootPath = classPath.substring(1,classPath.indexOf("/WEB-INF/classes"));
rootPath = rootPath.replace("/", "\\");
}
//linux下
if("/".equals(File.separator)){
rootPath = classPath.substring(0,classPath.indexOf("/WEB-INF/classes"));
rootPath = rootPath.replace("\\", "/");
}
return rootPath;
}
G. linux下用java執行.jar文件, 命令格式是什麼
1、打包時指定了主類,可以直接用java -jar xxx.jar
2、打包是沒有指定主類,可以用java -cp xxx.jar 主類名稱(絕對路徑)
3、要引用其他的jar包,可以用java -classpath $CLASSPATH:xxxx.jar 主類名稱(絕對路徑)
-classpath 指定需要引入的類;
我們可以將第三方包都放到CLASSPATH環境變數下,也可以直接指定第三方包的路徑,多個第三方包名,以";"號分隔;
ClassName 被執行的Java類名(不含class後綴)
H. java在linux下操作文件路徑怎麼寫
一般文件路徑在windows中用 \ 表示,但是在其他系統平台下比如linux中就不是 \ 所以java給我們提供了一個與平台無關的表示路徑的常量 File.separator在windows中則表示 \ 比如現在有一個文件在D:\java\src\myjava中, 如何用絕對路徑訪問呢?
現在建立一個目錄:
File fDir=new File(File.separator); //File.separator表示根目錄,比如現在就表示在D盤下。
String strFile="java"+File.separator+"src"+File.separator+"myjava"; //這個就是絕對路徑
File f=new File(fDir,strFile);
I. linux 啟動一個java有多個java進程
啟動java後台進程有兩種方式: 1. 絕對路徑/bin/java() & : 後台運行,你關掉終端會停止運行 2. nohup 絕對路徑/bin/java (java程序) : 後台運行,你關掉終端也會繼續運行 java相關操作有: 1.查看java進程信息