小编qiu*_*ian的帖子

如何在mac中使用"getopt"命令进行bash处理长参数?

我想让我的bash脚本处理长参数.我找到了getopt,但它在OS X中不受支持.任何人都可以告诉我为什么getoptBSD实现了,而不是GNU?我尝试getopt在GNU C lib中构建,但由于我在Linux上的技能不佳而失败了.

有人做过这项工作吗?

macos bash gnu

19
推荐指数
3
解决办法
1万
查看次数

如何在mac OS中观察静态lib的内容?

我在xCode中创建了一个静态库项目,并构建了一个名为mylib.a.a.有一些代码( .m文件)和另一个名为common.a的静态lib文件通知静态库nylib.a.但我怀疑,如果普通的竞争是真的包装在mylib.a中.那么如何在mac OS中观察mylib.a的内容呢?我知道有一些命令如ar,nm可以在Linux中完成这项任务.但它不能在mac OS中运行.

macos static unix-ar

11
推荐指数
1
解决办法
1万
查看次数

如何使用 fastlane 构建框架?

使用 fastlane 健身房构建 ipa 非常容易。但我的目标是建立一个框架。它适用于构建以下框架:

gym(
  clean: true,
  scheme: "SGVSDK",
  project: "../Prj/SDK/SGVSDK.xcodeproj",
  # build_path: "./",
  archive_path: "./" + archiveName,
  skip_package_ipa: true,
)
Run Code Online (Sandbox Code Playgroud)

但它只能构建设备框架吗?如何构建模拟器框架?对使用 fastlane 的 SDK CI 有什么提示吗?

continuous-integration fastlane

7
推荐指数
1
解决办法
3591
查看次数

如何将用户定义的宏传递给xcodebuild?

我通过 xcodebuild 在命令行中构建我的项目。不在 xCode 中。我想将一些 marc 传递给项目,以便它可以影响代码。比如下面的代码:

#if (API_TYPE == 1)
  #define URL_API @"https://dapi.xxx.com/1.1/"
#elif (API_TYPE == 2)
  #define URL_API @"https://tapi.xxx.com/1.1/"
#elif (API_TYPE == 3)
  #define URL_API @"https://api.xxx.com/1.1/"
#else
  #error "API_TYPE value error! should be only value 1,2,3 !"
#endif 
Run Code Online (Sandbox Code Playgroud)

我想在代码文件之外传递 API_TYPE 的定义。比如通过xcodebuild命令。但它不是这样工作的:

xcodebuild -sdk xxx -target xxx SYMROOT=${XCSYMROOT} API_TYPE=${APITYPE}
Run Code Online (Sandbox Code Playgroud)

API_TYPE 的值未更改。但 SYMROOT 的值已更改。那么如何实现将值传递给外部的 API_TYPE 呢?

c macros xcode xcodebuild

5
推荐指数
1
解决办法
8417
查看次数

在bash中将argv条目附加到数组(动态填充数组)

我试图将参数列表("$@")中的内容($1也包括以破折号开头的任何值)添加到bash中的数组中.

我当前的代码如下,但无法正常运行:

BuildTypeList=("armv7" "armv6")
BuildTypeLen=${#BuildTypeList[*]}

while [ "$2" != "-*" -a "$#" -gt 0 ]; do
    BuildTypeList["$BuildTypeLen"] = "$2"
    BuildTypeLen=${#BuildTypeList[*]}
    shift
done
Run Code Online (Sandbox Code Playgroud)

我的目的是BuildTypeList在运行时添加内容,而不是静态地将其内容定义为源的一部分.

arrays bash shell dynamic

5
推荐指数
2
解决办法
1万
查看次数

如何在shell中获取SVN头版本号?

我在命令行中使用svn.如何在命令行中获取头版本号.我需要这个号码,不仅要查看信息.我想用这个数字自动构建我的项目.

svn

4
推荐指数
1
解决办法
6729
查看次数

我怎么知道谁在Xcode中调用该方法?

Xcode是否有办法显示方法的调用函数?我想知道类中方法的所有调用函数.解决方案是在项目中找到方法,但有时不同的类具有相同名称的方法 - 这可以找到我们不寻找的方法.

许多其他IDE都具有此功能,例如Visual C++ 2003/2005/2008,Eclipse ......

你能在XCode中做到这一点吗?

xcode

4
推荐指数
1
解决办法
3274
查看次数

我如何知道为*.a文件构建的架构?

我正在研究mac OS 10.7.4.使用Xcode 4.3.2.

我有一个来自我的合作伙伴的*.a静态库文件.我想知道它是为哪个架构而构建的.是ARMv6,ARMv7,i386还是其他架构?

是否有任何命令或方法来获取有关文件架构的信息?

bsd arm ios

4
推荐指数
1
解决办法
2205
查看次数

如何使用sed用"\ /"替换路径字符串上的"/"?

我试过这个:

PATH="/user/dj/a/mydir"
PATH_FORMAT=`echo "${PATH}" | sed 's/\//\\\//'`
Run Code Online (Sandbox Code Playgroud)

但它只替换第一个"/".我希望得到的PATH_FORMAT值为:

"\/user\/dj\/a\/mydir"
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

bash shell sed sh

4
推荐指数
1
解决办法
5527
查看次数

如何在bash中获得10个时钟之前的当前时间字符串?

使用命令:

CURRTIME=`date "+%Y%m%d%k%M%S"`
Run Code Online (Sandbox Code Playgroud)

我可以获得当前时间字符串,例如"20120827141534".我想用这个字符串来制作一个文件.但是当它在10个时钟之前,它不能很好地运行.字符串将是spearate因为小时字符串只有一个数字,前面有空格.CURRTIME将是这样的:20120827 41534.我该如何处理它?

bash shell

3
推荐指数
1
解决办法
166
查看次数

为什么getopt在我的mac os中运行不正常?

在bash:我输入命令:

getopt -l name,data -- --namd
Run Code Online (Sandbox Code Playgroud)

而输出是

-- name,pp -- --namd
Run Code Online (Sandbox Code Playgroud)

输入:

getopt -l name,data -- --name
Run Code Online (Sandbox Code Playgroud)

输出其他

-- name,pp -- --name
Run Code Online (Sandbox Code Playgroud)

我输入时为什么不告诉我错误getopt -l name,data -- --namd

shell getopt

2
推荐指数
1
解决办法
4291
查看次数

如何在C中停止预编译?

查看config.h中的代码:

#if (API_TYPE == 1)
    #define URL_API @"https://dapi.xxx.com/1.1/"
#elif (API_TYPE == 2)
    #define URL_API @"https://tapi.xxx.com/1.1/"
#elif (API_TYPE == 3)
    #define URL_API @"https://api.xxx.com/1.1/"
#else
   // I want stop pre-compile if in here.
   // assert(0);
#endif
Run Code Online (Sandbox Code Playgroud)

API_TYPE只能定义为1,2,3.如果被定义为其他值则是错误的.我可以在#else路径中写一些非法代码.但它并不完美.是否有任何命令或方法停止预编译过程,如果它是#else路径?

c conditional-compilation precompiled

2
推荐指数
1
解决办法
311
查看次数

当我想要停止变量时,如何在xCode中设置BreakPoint?

我想在变量更改时设置breakPoint.例如:

......
if(downloader){
        [downloader addDelegate:sImageAutoSaver];
}
......
Run Code Online (Sandbox Code Playgroud)

我希望在下载程序更改时中断应用程序.因为我想知道谁更改了变量.

xcode breakpoints objective-c ios

2
推荐指数
1
解决办法
1030
查看次数