Sto provando a eseguire uno script di shell dalla mia applicazione Android.Come possiamo eseguire un file di script della shell dalla mia applicazione Android?
Per prima cosa ho cercato di correre script di shell da Java, e che funziona bene per tutti i comandi come pwd
, cd
, netstat
. spostando il file, copiando il file.
che io abbia provato da un'applicazione Android e sto ottenendo in uscita per cd
, pwd
, netstat
e per le dichiarazioni di eco che si trovano in sceneggiatura, ma per la movimentazione e la copia del file non si lavora.
Sono necessarie le autorizzazioni per eseguire questi comandi dal file di script mentre questi comandi funzionano correttamente dalla shell di adb?
il mio sguardo codice come questo:
void execCommandLine()
{
//***********************
try
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("ls -all");
proc = rt.exec("sh /data/shTest.sh");
InputStream is = proc.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (Throwable t)
{
t.printStackTrace();
}
e il mio file di script è il seguente: Solo
#!/bin/sh
echo "Knowledge is Power"
echo "I am a script"
echo $PATH
netstat
pwd
cd /data
pwd
cd /system/bin
pwd
mv /data/local/hello.txt /data/
cp /data/local/hello1.txt /data/
cd /data/local/tmp
cd /system/bin
i comandi cp
e mv
non stanno mostrando risultato atteso. Per favore, dammi una guida.
Per prima cosa sto provando e testandolo nell'emulatore. In/system/bin ha mv commond e ho anche provato con busybox ma non ho ottenuto risultati attesi. Per i privilegi di root come procedere ... Dare qualche idea per procedere.
Perché si posta una nuova domanda piuttosto che modificare quella precedente? –
@anshu hai trovato la soluzione alla domanda precedente.Se sì per favore dimmi la soluzione. – Ramakrishna
puoi farlo tramite 'adb shell'? – spatulamania