Difference between revisions of "Os.execute"
From GiderosMobile
m (Text replacement - "</source>" to "</syntaxhighlight>") |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
=== Description === | === Description === | ||
This function is equivalent to the C function system. It passes command to be executed by an operating system shell. It returns a status code which is system-dependent. If command is absent then it returns nonzero if a shell is available and zero otherwise. | This function is equivalent to the C function system. It passes command to be executed by an operating system shell. It returns a status code which is system-dependent. If command is absent then it returns nonzero if a shell is available and zero otherwise. | ||
− | < | + | <syntaxhighlight lang="lua"> |
(number) = os.execute(command) | (number) = os.execute(command) | ||
− | </ | + | </syntaxhighlight> |
=== Parameters === | === Parameters === | ||
'''command''': (string) command to execute<br/> | '''command''': (string) command to execute<br/> | ||
+ | |||
+ | For Windows you can check: | ||
+ | * '''https://learn.microsoft.com/en-gb/windows-server/administration/windows-commands/windows-commands''' | ||
=== Return values === | === Return values === | ||
Line 17: | Line 20: | ||
=== Examples === | === Examples === | ||
'''Opens a folder (windows 10)''' | '''Opens a folder (windows 10)''' | ||
− | < | + | <syntaxhighlight lang="lua"> |
if application:getDeviceInfo() == "Windows" then | if application:getDeviceInfo() == "Windows" then | ||
local lfs = require "lfs" | local lfs = require "lfs" | ||
Line 32: | Line 35: | ||
-- opens a window of the current lfs dir | -- opens a window of the current lfs dir | ||
os.execute("start "..lfs.currentdir()) | os.execute("start "..lfs.currentdir()) | ||
− | </ | + | </syntaxhighlight> |
'''Or if your path contains spaces''' | '''Or if your path contains spaces''' | ||
− | < | + | <syntaxhighlight lang="lua"> |
local path = "H:\\ShdowPLAY\\TMP\\Mafia Definitive Edition" | local path = "H:\\ShdowPLAY\\TMP\\Mafia Definitive Edition" | ||
--local path = "H:/ShdowPLAY/TMP/Mafia Definitive Edition" -- same | --local path = "H:/ShdowPLAY/TMP/Mafia Definitive Edition" -- same | ||
os.execute("start \"\" \"" .. path .. "\"") | os.execute("start \"\" \"" .. path .. "\"") | ||
− | </ | + | </syntaxhighlight> |
'''Copies some files from folder to folder beyond a given date''' | '''Copies some files from folder to folder beyond a given date''' | ||
− | * see: '''https://learn.microsoft.com/ | + | * see: '''https://learn.microsoft.com/en-gb/windows-server/administration/windows-commands/xcopy''' |
− | < | + | <syntaxhighlight lang="lua"> |
os.execute("xcopy \rawdata \reports /d:12-29-1993") | os.execute("xcopy \rawdata \reports /d:12-29-1993") | ||
− | </ | + | </syntaxhighlight> |
{{Os}} | {{Os}} |
Latest revision as of 14:32, 13 July 2023
Available since: Gideros 2011.6
Class: os
Description
This function is equivalent to the C function system. It passes command to be executed by an operating system shell. It returns a status code which is system-dependent. If command is absent then it returns nonzero if a shell is available and zero otherwise.
(number) = os.execute(command)
Parameters
command: (string) command to execute
For Windows you can check:
Return values
Returns (number) status code
Examples
Opens a folder (windows 10)
if application:getDeviceInfo() == "Windows" then
local lfs = require "lfs"
-- go to user/pictures folder
lfs.chdir(application:get("directory", "pictures"))
-- check if "my_new_folder" directory exists in user/pictures folder
local islfsdir = lfs.chdir(lfs.currentdir().."\\".."my_new_folder")
if not islfsdir then
-- if doesn't exist then create it and go to it
lfs.mkdir(lfs.currentdir().."\\".."my_new_folder")
lfs.chdir(lfs.currentdir().."\\".."my_new_folder")
end
end
-- opens a window of the current lfs dir
os.execute("start "..lfs.currentdir())
Or if your path contains spaces
local path = "H:\\ShdowPLAY\\TMP\\Mafia Definitive Edition"
--local path = "H:/ShdowPLAY/TMP/Mafia Definitive Edition" -- same
os.execute("start \"\" \"" .. path .. "\"")
Copies some files from folder to folder beyond a given date
os.execute("xcopy \rawdata \reports /d:12-29-1993")