📄 command.java
字号:
//System.out.println("subid="+dir_id);
LineStrChange.setFileName( "inode.txt" );
int i = Integer.parseInt(dir_id);
LineStrChange.changeLine(dir_id,i+1); //rm inode information
LineStrChange.setFileName(datafile);
LineStrChange.deleteLine(linenum); //rm datafile information
//*****rm all file and directory it contain*************************
//******************************************************************
String rmfile="datafile/"+dir_id+".txt";
FileInputStream rmfil=new FileInputStream(rmfile);
BufferedReader rmbr=new BufferedReader(new InputStreamReader(rmfil));
// System.out.println("wo haha");
String rmline;
String sub_id;
int rmlinenum=0;
String rm_id=null;
while((rmline=rmbr.readLine())!=null)
{
rmlinenum++;
String result[]=rmline.split(" ");
sub_id=result[1];
LineStrChange.setFileName( "inode.txt" );
int subi = Integer.parseInt(sub_id);
LineStrChange.changeLine(sub_id,subi+1);
//System.out.println("subid="+sub_id);
//String subfile="datafile/"+sub_id+".txt";
LineStrChange.setFileName(rmfile);
LineStrChange.deleteLine(1);
//LineStrChange.setFileName(datafile);
//LineStrChange.deleteLine(linenum);
String subfile="datafile/"+sub_id+".txt";
FileOutputStream fops=new FileOutputStream(subfile);
}
}
public void rm(String filename) throws Exception
{
String line;
String file_id=null;
String datafile="datafile/"+SystemInformation.cur_id+".txt";
FileInputStream fil=new FileInputStream(datafile);
BufferedReader br=new BufferedReader(new InputStreamReader(fil));
// System.out.println("wo haha");
int linenum=0;
while((line=br.readLine())!=null)
{
linenum++;
String result[]=line.split(" ");
if(result[0].equals(filename))
{
//System.out.println("wo haha");
file_id=result[1];
break;
}
}
LineStrChange.setFileName( "inode.txt" );
int i = Integer.parseInt(file_id);
LineStrChange.changeLine(file_id,i+1);
LineStrChange.setFileName(datafile);
LineStrChange.deleteLine(linenum);
//清除对应数据文件的数据
String s="datafile/"+file_id+".txt";
FileOutputStream fops=new FileOutputStream(s);
}
public void passwd(String username,String newpwd) throws Exception
{
String line;
int linenum=0;
FileInputStream fil=new FileInputStream("user.txt");
BufferedReader br=new BufferedReader(new InputStreamReader(fil));
while((line=br.readLine())!=null)
{
linenum++;
String result[]=line.split(" ");
if(result[0].equals(username))
{
String changedinformation=result[0]+" "+newpwd+" "+result[2];
LineStrChange.setFileName( "user.txt" );
LineStrChange.changeLine(changedinformation,linenum);
}
}
System.out.println("用户密码已改!");
}
public void mv(String filename,String newname) throws Exception
{
String line;
int linenum=0;
String datafile="datafile/"+SystemInformation.cur_id+".txt";
FileInputStream fil=new FileInputStream(datafile);
BufferedReader br=new BufferedReader(new InputStreamReader(fil));
while((line=br.readLine())!=null)
{
linenum++;
String result[]=line.split(" ");
if(result[0].equals(filename))
{
String changedinformation=newname+" "+result[1];
LineStrChange.setFileName(datafile);
LineStrChange.changeLine(changedinformation,linenum);
}
}
}
public void cp(String file1,String file2) throws Exception
{
String line;
String file1_id="";
String file2_id="";
String datafile = "datafile/" + SystemInformation.cur_id + ".txt";
FileInputStream fil = new FileInputStream(datafile);
BufferedReader br = new BufferedReader(new InputStreamReader(fil));
//find two file id;
while ((line = br.readLine()) != null)
{
String result[] = line.split(" ");
if (result[0].equals(file1))
{
file1_id = result[1];
}
if (result[0].equals(file2))
{
file2_id = result[1];
}
}
//cp file1 to file2
String datafile1="datafile/" + file1_id + ".txt";
String datafile2="datafile/" + file2_id + ".txt";
String readLen;
FileInputStream fis = new FileInputStream(datafile1);
BufferedReader bread = new BufferedReader(new InputStreamReader(fis));
FileOutputStream fos= new FileOutputStream(datafile2);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos));
while((readLen=bread.readLine())!=null)
{
bw.write(readLen);
bw.newLine();
}
bw.flush();
bread.close();
bw.close();
}
public void chmod(String mode,String file) throws Exception
{
String line;
String file_id="";
String datafile = "datafile/" + SystemInformation.cur_id + ".txt";
FileInputStream fil = new FileInputStream(datafile);
BufferedReader br = new BufferedReader(new InputStreamReader(fil));
while ((line = br.readLine()) != null)
{
String result[] = line.split(" ");
if (result[0].equals(file))
{
file_id = result[1];
}
}
br.close();
//System.out.println("fileid is"+file_id);
String line2;
FileInputStream fil2 = new FileInputStream("inode.txt");
BufferedReader br2 = new BufferedReader(new InputStreamReader(fil2));
int linenum=0;
String changednode="";
while ((line2 = br2.readLine()) != null)
{
String result[] = line2.split(" ");
if(result[0].equals(file_id))
{
changednode=result[0]+" "+mode+" "+result[2]+" "+result[3]+" "+result[4]+" "+
result[5]+" "+result[6]+" "+result[7]+" "+result[8]+" "+result[9];
linenum=Integer.parseInt(result[0]);
}
}
br2.close();
//System.out.println("changednode is"+changednode);
//System.out.println("linenum is"+linenum);
LineStrChange.setFileName("inode.txt");
LineStrChange.changeLine(changednode,linenum+1);
}
public void chown(String owner,String file) throws Exception
{
String line;
String file_id="";
String datafile = "datafile/" + SystemInformation.cur_id + ".txt";
FileInputStream fil = new FileInputStream(datafile);
BufferedReader br = new BufferedReader(new InputStreamReader(fil));
while ((line = br.readLine()) != null)
{
String result[] = line.split(" ");
if (result[0].equals(file))
{
file_id = result[1];
}
}
br.close();
//System.out.println("fileid is"+file_id);
String line2;
FileInputStream fil2 = new FileInputStream("inode.txt");
BufferedReader br2 = new BufferedReader(new InputStreamReader(fil2));
int linenum=0;
String changednode="";
while ((line2 = br2.readLine()) != null)
{
String result[] = line2.split(" ");
if(result[0].equals(file_id))
{
changednode=result[0]+" "+result[1]+" "+owner+" "+result[3]+" "+result[4]+" "+
result[5]+" "+result[6]+" "+result[7]+" "+result[8]+" "+result[9];
linenum=Integer.parseInt(result[0]);
}
}
br2.close();
//System.out.println("changednode is"+changednode);
//System.out.println("linenum is"+linenum);
LineStrChange.setFileName("inode.txt");
LineStrChange.changeLine(changednode,linenum+1);
}
public void chgrp(String group,String file) throws Exception
{
String line;
String file_id="";
String datafile = "datafile/" + SystemInformation.cur_id + ".txt";
FileInputStream fil = new FileInputStream(datafile);
BufferedReader br = new BufferedReader(new InputStreamReader(fil));
while ((line = br.readLine()) != null)
{
String result[] = line.split(" ");
if (result[0].equals(file))
{
file_id = result[1];
}
}
br.close();
//System.out.println("fileid is"+file_id);
String line2;
FileInputStream fil2 = new FileInputStream("inode.txt");
BufferedReader br2 = new BufferedReader(new InputStreamReader(fil2));
int linenum=0;
String changednode="";
while ((line2 = br2.readLine()) != null)
{
String result[] = line2.split(" ");
if(result[0].equals(file_id))
{
changednode=result[0]+" "+result[1]+" "+result[2]+" "+group+" "+result[4]+" "+
result[5]+" "+result[6]+" "+result[7];
linenum=Integer.parseInt(result[0]);
}
}
br2.close();
//System.out.println("changednode is"+changednode);
//System.out.println("linenum is"+linenum);
LineStrChange.setFileName("inode.txt");
LineStrChange.changeLine(changednode,linenum+1);
}
public void ln()
{}
public boolean login(String username,String password) throws Exception
{
boolean b=false;
String line=null;
// int i=0,j=0;
FileInputStream fil=new FileInputStream(".//user.txt");
BufferedReader br=new BufferedReader(new InputStreamReader(fil));
// String [] list=new String=[1024];
while((line=br.readLine())!=null)
{
String result[]=line.split(" ");
// System.out.println(result[0]+result[1]);
if(result[0].equals(username)&&result[1].equals(password))
{
b=true;
break;
}
else
b=false;
}
return b;
}
public void logout()
{
System.out.println("系统即将退出,正在保存系统");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -