Android :: Command Line - Access Bash Shell?
Apr 17, 2010I have a netbook with Android installed. Is it possible to access the bash shell?
View 5 RepliesI have a netbook with Android installed. Is it possible to access the bash shell?
View 5 RepliesI am looking for a way to send an email, preferably with an attachment, from a command line shell script (bourn/ash/whatever-it-is). No user interaction is a requirement.
It looks like an "am start" command might be able to do it via launching another app, and I've seen some examples out there, but nothing that I've had success with.
I have a big rsync backup script that I run to back up my device to my server, but I want to be able to email myself a notification if the backup fails, along with a copy of a log file. This script runs on a regular basis via a scheduler without any user interaction, but I have noticed that rsync has been failing recently and I've needed to re-run it manually later.
I am a pro Linux sysadmin but don't know jack about Java. I do bash, python, perl, and some C. My current script is just a sh shell script.
FYI my device is a Nexus One on Cyanogen 7.2. FYI I own the mail server here. I use k9mail as my primary mail app but the gmail app could be used as well.
If there was just a "mail" command.
Have just got a Galaxy S and this is my first experience with Android.
a. How do I set the host name for my phone?
b. How do I start a command line shell?
So i am wanting to fiddle around with the new sdk but I never learned how to use command line in any IDE. Anyways I need to create an AVD with the command line can someone please tell me the steps or tell me somewhere I can read up on this. I have tried google searching command line eclipse, but the only results I get are nifty commands I can use once I actually find out how to get a command line. I am using windows.
View 5 Replies View RelatedI am new to the development, i have created a database and i have inserted values using eclipse code and i have successes on that But i want to see where this database exists, i have checked on tools directory from command prompt and if i query the table using select , it is saying that no table exists, Can anyone please tell me that how to access database from command line?
View 3 Replies View RelatedBy using command prompt access the device shell/terminal. then use the su command getting permission denied error. Why this happening? how can i solve this problem.
View 4 Replies View RelatedI'm using ICS (AOKP with some CM9 patches). I'd like "adb shell" to bring up bash instead of mksh. Is there any way to do this? I tried linking /bin/sh to `which bash`, but that caused system problems--I lost USB debugging completely and had to restore from nandroid backup.
View 2 Replies View RelatedI cobbled all of this together from various places on the web, but I think the credit for the binaries goes to Paul @ MoDaCo.
Nandroid before going any further!
Files you'll need:
QuickSSHD (Download this from the Market. $1.50). I'm just going to assume if you're still reading, you know what this is for and how to use it. It's braindead simple. I think dropbear can be installed and configured manually, but for the $1.50...meh.
The rest are zipped up here: terminfo.zip, nano, bash, profile**
Unzip bashnano.zip onto your SDCard.
From adb shell:
CODE:.................
I'm not sure if this setup will have any impact on sh scripts being used in the various ROMs, so use this at your own risk.
This will give you full bash over adb, but I haven't figured out where profile goes to add terminal/color et al. for adb.
Is it a way to access Linux shell command from with the Android Java SDK? I would like to do it as a root user after the user gives the permission.
View 3 Replies View RelatedI want to use command like "ls","mkdir","cd","./"..etc, in the app, somebody says use Runtime class,
Runtime.getRuntime().exec("ls");
but there is nothing happen.. I also use logcat to observe, but have the same result.
so could app use (linux) command?
I am trying to run an ADB shell command from inside an android app using the JAVA's Runtime.getRunTime.exec API. I am getting an error "ERROR/ProcessManager(1041): Error running adb: Permission denied". Wanted to check if there is any permission that I need to request to get it working or that running the adb shell command would not be allowed from with in the Android app.
I am able to execute other linux commands like 'ls' from the android app though.
I am trying to execute a command from within my code, the command is "echo 125 > /sys/devices/platform/flashlight.0/leds/flashlight/brightness" and I can run it without problems from adb shell
I am using Runtime class to execute it : Runtime.getRuntime().exec("echo 125 > /sys/devices/platform/flashlight.0/leds/flashlight/brightness");
However I get a permissions error since I am not supposed to access the sys directory. I have also tried to place the command in a String[] just in case spaces caused a problem but it didn't make much differense.
I have copied a file named hello(compiled form hello.c) in android data folder and using command like "adb shell datahello" in android machine terminal. and it give fine output.
Actual Question is that is there is any way that in button click listener, i initiate the same command like "adb shell datahello" (or any other appropriate way to execute adb shell commands) and gets its output in TextView.
I keep getting
ADB rejected shell command (ls -l /data):
And the command prompt when running adb shell tells me error: device not found although the emulator is open.
I am trying to use "adb -d shell" command to start a shell on device (android dev 1 phone ) from my vista command line. But whenever I try giving such command it does not open any shell or interaction on the phone device. But instead it goes to the next line in the cmd as '$'. any help would really appreciable. I have installed adb_usb_windows.
Previously I used work well with the emulator. Using adb command never troubled me. But now with new device, I am not able to open a shell using adb -d shell command on the phone.
I am trying to dump the content of sqlite via adb shell command.
Here is what i did:
CODE:...........
My questions I try both 'tables' command and dump the schema for 'main', I can't find my table. Can you please tell me what am I doing wrong?
In my java code, I am able to insert value to DB like this:
CODE:.................
In my application I want to create a directory xyz in sdcard at the runtime from the my Application. But it doesn't work.
Here is my code...............
I try to execute shell commands, this does work as it should. Even the result comes back (as is see on LogCat). The problem ist the last line of the result. Every time a readLine() on the last line occurs (which shouldn't occur, temp should be null), the app hangs forever and doesn't come back from the readLine call. Maybe you find the error. I tried readUTF and standart read(), all the same problem. And yes, the app got su-rights.
try {
Process process = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
DataInputStream osRes = new DataInputStream(process.getInputStream());
for (String single : commands) { os.writeBytes(single + " ");
os.flush(); String temp = new String();
while( (temp = osRes.readLine()) != null) { Log.v("NITRO", temp);
result2 += temp + " ";
} } os.writeBytes("exit");
os.flush(); process.waitFor();
} catch (IOException e) { Toast.makeText(Main.this, "Error", Toast.LENGTH_LONG);
} catch (InterruptedException e){ Toast.makeText(Main.this, "Error", Toast.LENGTH_LONG);
}
That is the StackTrace where it hangs when I stop debugger when hanging:
OSFileSystem.readImpl(int, byte[], int, int) line: not available [native method]
OSFileSystem.read(int, byte[], int, int) line: 118
ProcessManager$ProcessInputStream(FileInputStream).read(byte[], int, int) line: 312
ProcessManager$ProcessInputStream(FileInputStream).read() line: 250
DataInputStream.readLine() line: 309
Main$2$1.run() line: 84
ViewRoot(Handler).handleCallback(Message) line: 587
ViewRoot(Handler).dispatchMessage(Message) line: 92
Looper.loop() line: 123
ActivityThread.main(String[]) line: 4627
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 521
ZygoteInit$MethodAndArgsCaller.run() line: 868
ZygoteInit.main(String[]) line: 626
NativeStart.main(String[]) line: not available [native method]
I wish to know how in java I should receive these parameters. I do know how to deliver parameters via adb shell am start command but I still have a problem to get them in java (android) code.
My class extends InstrumentationTestCase and not Activity class!
So I cannot perform: this.getIntent().
I anderstand that I need to create intent doing: Intent intent = new Intent(Intent.someAction);
Can you help me to find out what action should I use here.
I also read that there are secondary attributes: category, type, component, extras. I know that I also need to update the manifest file accordingly. Sorry for so many q/a.
Specifically, I was trying to use the sqlite3 command with the adb shell to run some queries on the database of the Android application I'm building. I kept getting "sqlite3: permission denied". I'm developing on a Nexus One that I purchased from Google. Does my phone need to be rooted or something?
View 1 Replies View RelatedI am wondering what terminal command I can use to check if a process has been cached. On my Sprint Galaxy Nexus, rooted, with the latest build of the Paranoid Android jelly bean rom, I can go to my settings, click on apps, swipe to the "Running Apps" list, and click on the button at the top of the screen that says "Show Cached Processes," and that displays the list that I am trying to access. My reasoning for doing this, is to use "Secure Settings" in conjunction with "Tasker" to check if my "Groove IP" application is running. Initially, I was trying to use "pgrep -l com.*" and check that list for "com.gvoip" too see if "Groove IP" is running in the tray (pull down menu), but if the process is cached, it still shows up in that list. How to get a list of cached processes from terminal.
View 4 Replies View RelatedThe latest version of Google Now (2.1) doesn't like being flashed. If you flash it via CWM it seems to break voice search functionality, causing a force close.
Playing with the adb shell, I discovered that the pm install command works nicely:
Code:
pm install [APKNAME].apk
So, I thought this would be perfect to execute in a shell script via CWM/Edify.
So far I've tried all manner of commands. First I was trying the above command in a install.sh file, before I realised that "pm" wasn't present anywhere in /sbin/ (the header of my shell script is #!/sbin/sh").
So, I've tried this:
Code:
#!/sbin/sh
exec /system/bin/pm install data/media/install/Velvet.apk
Here is the update script:
Code:
ui_print("Mounting system...");
run_program("/sbin/busybox", "mount", "/system");
ui_print("Mounting data...");
run_program("/sbin/busybox", "mount", "/data");
[Code] .....
Which, copies the files correctly. This also isn't my first time running scripts in my installer, but this is the first time I've attempted this. To no avail. This same command works in the adb shell, though.
Also, is there another way of flashing that may work? I heard about putting the original file ("Velvet.apk") in /system/app and then putting the updated version in /data/appcom.google.andorid.googlequicksearch-1.apk but this doesn't work either.
Running the above script in Busybox installer's script running function also works perfectly. The only thing it won't do is install from CWM.
I'm trying to unzip an apk using the device shell. I need to see the package name of the app contained in the apk. I tried using unzip -l but I just get output that says "zip flags 1 and 8 not supported". How can I unzip an apk? For that matter, am I using the right tool for this job? I just want to view the manifest of the apk, really. I have busybox.
View 4 Replies View RelatedI pushed + and power the red triangle pops i went to adb devices it showed the devices on recovery mode. Is there a command that i can put to wipe data? Such as adb shell command.
View 1 Replies View Relatedi have made a kinda theme installer (for stockrom)..
so.. first of all i extract needed file from assets to sdcard
n on button click i add this line of code..
the code is work n sometimes not...
when execute the code, my phone hang for several time
"here is the line of execution code :
Code:
Process ppush;
try {
ppush = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(ppush.getOutputStream());
os.writeBytes("mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
");
os.writeBytes("cp /mnt/sdcard/dys/SystemUI.apk /system/app
");
[code].....
How can i specify command-line parameter when I launch an android application? 1- With Eclipse 2- Directly from the phone
View 2 Replies View RelatedI'm still pretty new to Android and programming in general, and I can't seem to get the command line tools packaged with the Android SDK to work. I'm running Mac OSX and each time I try to run layoutopt, for example, the terminal returns, *-bash: cmd: command not found. Also, is it okay to have my SDK located in the Developer directory and my android project in some unrelated directory when using these tools?
View 3 Replies View RelatedRead through Couple of articles , Most of them point to the DDMS through that we could take the Screenshot. However i am trying to capture the Emulator screen from the Command Line. Not Sure how to tweak the framebuffer /Surface flinger to do the job. or is there any app that we could run in the background and get the job done.
View 10 Replies View RelatedThe use case that I have to emulate is to inject random keypresses. I have observed it that it is possible using adb shell command "input". Can someone point me to the source code in the android build tree, so that I can accordingly implement the same in our test app.
View 2 Replies View RelatedWhen I start the ADB shell from the Windows command line, and type the command "ls", the list of files I get is not sorted by name. Also, if I enter "ls -r" which should reverse sort, I get the error message "no such file". If I type "busybox ls -l", I get the expected sorted list. Also, other commands like "busybox ls -la" work.
My Phone is a Samsung Captivate i897, rooted from Gingerbread with Corn Kernel v7.06 with Superuser and BusyBox installed.
How can I get the Busybox version of the shell commands to run without having to type "busybox" all the time?